Objetivo del tema
Conectar Bionic con una carpeta de trabajo, comprender qué aporta la indexación, investigar un repositorio mediante búsquedas, realizar cambios con alcance preciso y ejecutar comandos de terminal sin perder el control del proyecto.
Al asociar un directorio y permitir capacidades de código, Bionic puede buscar en el repositorio, leer y editar archivos, utilizar Git y ejecutar comandos de shell en el directorio de trabajo. Esto permite tareas como:
Estas capacidades amplían el impacto del agente: ya no trabaja sólo en un sandbox documental, sino sobre la carpeta local seleccionada.
La carpeta elegida define el espacio que Bionic indexa y donde opera. Selecciona el nivel que contiene la configuración principal del proyecto, no una subcarpeta aislada ni un directorio demasiado amplio.
| Selección | Consecuencia | Recomendación |
|---|---|---|
mi-api/ con código, pruebas y configuración | El agente puede relacionar implementación y tests. | Adecuada para un repositorio único. |
mi-api/src/ | Puede perder pruebas, manifiestos y documentación de la raíz. | Sube un nivel salvo que quieras limitar el alcance deliberadamente. |
| Una carpeta con muchos proyectos no relacionados | La búsqueda se vuelve ruidosa y aumenta el riesgo de tocar otro proyecto. | Crea proyectos separados. |
| Raíz de un monorepo | Comparte configuración y paquetes, pero el alcance es grande. | Indica paquete, aplicaciones afectadas y comandos enfocados. |
Bionic indexa la carpeta seleccionada para poder localizar archivos y buscar el código pertinente. La indexación es un mapa de búsqueda; no significa que todo el repositorio se incluya simultáneamente en cada prompt.
Durante una tarea, el agente consulta ese mapa, abre archivos relevantes y lleva al contexto los fragmentos necesarios. Por eso un repositorio puede ser mayor que la ventana de contexto del modelo, aunque una tarea excesivamente amplia siga requiriendo dividirse.
Cuando agregas, renombras o generas muchos archivos, concede tiempo para que la vista del proyecto se actualice. Si una búsqueda no encuentra un elemento recién creado, abre el archivo directamente o inicia una nueva consulta con la ruta exacta.
Si la carpeta es un repositorio Git, el panel de archivos muestra también el repositorio y la rama actual. Antes de trabajar, comprueba:
Bionic 1.1.1 corrigió casos en los que los detalles de la rama quedaban desactualizados tras cambios en el repositorio. Aun con una versión reciente, confirma con git status y git branch --show-current antes de una operación importante.
El primer prompt no tiene que pedir modificaciones. Solicita una radiografía breve y basada en archivos:
Revisa el inventario contra los manifiestos, el README y los archivos de automatización. Una detección incorrecta del gestor de paquetes puede producir instalaciones o archivos de bloqueo no deseados.
Una buena investigación combina varias estrategias. Encontrar una cadena no demuestra que ese archivo controle el comportamiento; sigue importaciones y llamadas hasta reconstruir el recorrido.
| Pedido débil | Pedido útil |
|---|---|
| «¿Dónde está el login?» | «Localiza el flujo de inicio de sesión desde la ruta HTTP hasta la validación de credenciales y la creación de sesión. Enumera archivos y funciones en orden.» |
| «Busca el error.» | «Busca el mensaje exacto “Token expired”, identifica quién lo genera y quién lo transforma en respuesta HTTP. No cambies archivos.» |
| «Explica este proyecto.» | «Explica sólo cómo se crea un pedido, incluyendo controlador, servicio, persistencia y pruebas relacionadas.» |
Escribe @ para seleccionar un archivo en la paleta de referencias. Si una respuesta incluye un chip con ruta y líneas, ábrelo para revisar el fragmento. Desde Bionic 1.0.7 los rangos con estilo de GitHub pueden mostrarse como referencias cliqueables.
Los números de línea pueden cambiar después de una edición; la ruta y el nombre del símbolo son referencias más estables para un seguimiento posterior.
Para comprender una funcionalidad, el agente debería revisar como mínimo:
Pide que separe hechos observados de hipótesis. Una explicación basada sólo en nombres de archivo puede sonar convincente y ser incorrecta.
Una instrucción de cambio debe contener comportamiento actual, resultado esperado, límites y verificación:
Para cambios grandes, pide primero una lista de archivos y un plan. El tema siguiente profundiza el ciclo inspeccionar, cambiar, probar y revisar diffs.
El agente puede crear, reemplazar o modificar fragmentos de archivos. Tras cada edición, comprueba:
Con capacidades de código, Bionic puede ejecutar comandos en el directorio seleccionado. La terminal permite inspeccionar el entorno, instalar dependencias, generar archivos, ejecutar la aplicación y correr pruebas.
| Tipo | Ejemplos | Riesgo habitual |
|---|---|---|
| Lectura | Estado de Git, listar scripts, consultar versión. | Bajo, aunque puede exponer información sensible en la salida. |
| Verificación | Tests, linter, comprobación de tipos, compilación. | Puede crear cachés o artefactos y consumir recursos. |
| Modificación | Instalar paquetes, formatear, migrar o generar código. | Cambia archivos, lockfiles, datos o entorno. |
| Destructivo o externo | Eliminar, resetear, publicar, desplegar o enviar datos. | Pérdida de información o impacto fuera del equipo. |
Revisa el comando completo, su directorio y sus argumentos. Los modos de aprobación y Auto Review se estudiarán en el tema 19.
Antes de instalar o ejecutar, pide al agente que identifique el gestor y los scripts existentes. No mezcles npm, pnpm o yarn, ni diferentes gestores de Python, sin una razón explícita.
Si elegiste una carpeta incorrecta o el proyecto se movió, abre el panel derecho, localiza las opciones del directorio y selecciona Change working directory.... Después:
No continúes ciegamente un plan elaborado para la carpeta anterior.
Para programar, el modelo debe seguir herramientas y mantener coherencia entre varios archivos. Elige uno con capacidad agéntica adecuada y contexto suficiente para la tarea.
Indexar una carpeta no significa que todo el repositorio se envíe de una vez. Sin embargo, los fragmentos leídos para una solicitud se procesan donde se ejecuta el modelo elegido: localmente, mediante LM Link o en Secure Cloud. Excluye secretos de la tarea y confirma el destino de inferencia antes de trabajar con código confidencial.
Crea una carpeta llamada inventario-demo con esta estructura:
package.jsonsrc/catalogo.jstest/catalogo.test.jsRevisa que la función normalice ambos operandos al comparar y que productos permanezca intacto. Ejecuta también npm test manualmente si Node.js está instalado.
" a-01 " y Mouse con "b-02", no hay dependencias nuevas y sólo cambian el archivo de implementación y su prueba.
| Problema | Comprobación o solución |
|---|---|
| No aparecen herramientas de código. | Confirma que la sesión tenga Allow coding y un directorio asociado. |
| Faltan archivos en la búsqueda. | Verifica la carpeta raíz, espera la indexación y menciona la ruta exacta. |
| El agente analiza otro paquete. | Indica la subcarpeta y limita expresamente los archivos permitidos. |
| El comando falla. | Revisa directorio, shell, dependencias, variables y el comando documentado por el proyecto. |
| Aparecen muchos archivos modificados. | Detén la tarea, revisa Git y determina si un formateador o generador excedió el alcance. |
| La rama mostrada no coincide. | Actualiza Bionic y confirma con git branch --show-current. |
| El modelo describe archivos inexistentes. | Pide rutas y fragmentos verificables; abre los chips antes de aceptar la conclusión. |
En el próximo tema profundizaremos el flujo seguro de inspeccionar, cambiar, probar y revisar diffs antes de conservar una modificación.
Fuentes oficiales consultadas: guía de proyectos de código, creación del proyecto y Allow coding, proyectos, sesiones y directorios compartidos, trabajo agéntico con repositorios extensos, flujos de código con modelos locales y cambios actuales de proyectos, búsqueda y Git.