Cómo usar Cursor: guía completa para tu primer día con el editor IA

Instalación, configuración y las funciones que de verdad importan. Sin rodeos, sin tutoriales de YouTube de 4 horas.

9 min de lectura Actualizado el

En este artículo

Qué es Cursor y por qué no es "otro Copilot"

Cursor no es un plugin. No es una extensión que instalas encima de VS Code y rezas para que no rompa nada. Es un editor completo, bifurcado directamente del código de VS Code, con IA cosida en las tripas desde el principio.

La diferencia práctica es enorme: donde Copilot te sugiere la siguiente línea, Cursor entiende tu repositorio entero. Puede leer varios archivos a la vez, razonar sobre cómo se conectan y hacer cambios coordinados en varios sitios en una sola operación. No es magia; es que el contexto que maneja es mucho más amplio.

Y como parte de VS Code, puedes importar tus extensiones, tus atajos y tu tema en el primer arranque. Si llevas años con una configuración afinada, no la pierdes.


Instalación: cinco minutos y listo

Ve a cursor.com y descarga el instalador para tu sistema operativo: Windows, macOS o Linux. No hay trampa ni cartón.

Al arrancarlo por primera vez, Cursor te pregunta si quieres importar tu configuración de VS Code. Acepta. Te trae extensiones, tema de color, snippets y atajos de teclado. No es garantía de que todo funcione exactamente igual, puede haber incompatibilidades con extensiones muy específicas, pero en la práctica el 95% de la configuración típica viaja sin problemas.

Después, crea una cuenta o inicia sesión. Hay nivel gratuito disponible; no necesitas tarjeta de crédito para empezar.

Abre un proyecto real desde el primer momento. Cursor aprende del código que tiene delante, no en abstracto. Si abres una carpeta vacía, las sugerencias serán genéricas y te llevará una impresión equivocada de lo que hace.


El primer paso que nadie hace: dejar que Cursor indexe tu proyecto

Cuando abres una carpeta de proyecto, Cursor escanea automáticamente los archivos para construir un índice de contexto. Ese índice es lo que le permite hacer sugerencias relevantes para tu código, no código genérico de Stack Overflow.

El problema: si tienes carpetas excluidas (por ejemplo, en .cursorignore o en la configuración), Cursor no las ve. Y si no las ve, sus sugerencias se vuelven menos precisas porque le falta contexto.

Antes de ponerte a programar, revisa que no haya carpetas críticas excluidas del índice. En proyectos grandes esto marca la diferencia entre sugerencias que encajan y sugerencias que contradicen tu arquitectura.


Tab Autocomplete: el autocompletado que sí funciona

El Tab Autocomplete de Cursor está alimentado por Supermaven y predice bloques de código de varias líneas, no solo la siguiente palabra.

Cómo funciona en la práctica: escribes el inicio de una función y Cursor te muestra en gris lo que cree que vas a escribir. Si es lo que quieres, pulsas Tab y se inserta. Si no, sigues escribiendo y la sugerencia se actualiza.

Lo interesante es que en TypeScript y Python también resuelve imports automáticamente. Si usas una función de una librería que no has importado todavía, Cursor añade el import solo. Pequeño detalle que en un día de trabajo te ahorra varios minutos de ir y volver al principio del archivo.

Cómo sacarle partido desde el día uno:

  1. Escribe el nombre de la función y el primer parámetro.
  2. Para un segundo y deja que Cursor piense (suele ser menos de un segundo).
  3. Lee la sugerencia antes de aceptarla. No es infalible.
  4. Si la sugerencia está bien pero es larga, Tab la acepta entera. Si solo quieres parte, sigue escribiendo.

El error típico del primer día es pulsar Tab sin leer. El autocompletado es muy bueno, pero "muy bueno" no es "perfecto". Código plausible pero incorrecto es peor que no tener código, porque te lo crees.


Inline Editing (Cmd/Ctrl+K): cirugía de precisión en tu código

Esta es probablemente la función más útil para el día a día. Seleccionas un fragmento de código en el editor, pulsas Cmd+K (en Mac) o Ctrl+K (en Windows/Linux), describes el cambio que quieres y Cursor modifica solo esa selección.

No toca nada más. No reescribe el archivo entero. No te rompe la función de al lado.

Ejemplos concretos de uso:

  • Seleccionas una función síncrona y le dices: "Convierte esto a async/await con manejo de errores". Cursor reescribe solo esa función.
  • Seleccionas un bloque sin validación y le dices: "Añade validación de entrada para que el parámetro no sea null ni undefined". Lo hace.
  • Seleccionas código legacy y le dices: "Añade comentarios JSDoc a cada método". Los añade.

La clave está en el prompt. Cuanto más específico, mejor resultado:

// Prompt vago (resultado mediocre):
"Mejora esto"

// Prompt específico (resultado útil):
"Refactoriza esta función: usa async/await, añade try/catch,
devuelve un objeto tipado con { data, error }, añade JSDoc"

La diferencia en el output es brutal. Con el prompt vago Cursor adivina qué quieres y acierta a medias. Con el específico tiene restricciones claras y las cumple.


AI Chat Panel (Cmd/Ctrl+L): habla con tu repositorio

El chat de Cursor no es ChatGPT con tu código pegado. Tiene acceso al índice de tu proyecto y puede razonar sobre él.

Para abrirlo: Cmd+L en Mac, Ctrl+L en Windows/Linux. También hay un botón en la esquina superior derecha llamado "Toggle AI pane".

Usos prácticos:

  • Entender código ajeno: "¿Cómo funciona el sistema de autenticación en este proyecto?" Cursor busca en los archivos relevantes y te explica el flujo.
  • Depurar errores: Pegas el mensaje de error, describes qué estabas haciendo y preguntas qué está pasando. Cursor sugiere la corrección y explica por qué falla.
  • Generar código desde cero: "Crea una función que valide emails según el RFC 5322". Te da el código, lo explicas, y si quieres insertarlo hay un botón "Apply".

El botón "Apply" es importante: no tienes que copiar y pegar manualmente. Cursor inserta el código en el punto correcto del archivo activo.

El error que comete todo el mundo aquí: el chat como si fuera Google. Preguntas genéricas como "¿Cuál es la mejor forma de manejar estado en React?" te dan respuestas genéricas. La potencia del chat está en preguntas ancladas a tu código: "En este proyecto, ¿cómo se maneja el estado global en los componentes de la carpeta src/features?"


Composer (Cmd/Ctrl+I): cuando el cambio afecta a varios archivos

El Composer es para operaciones que cruzan fronteras de archivo. Refactorizaciones grandes, añadir una feature que toca el modelo, la vista y el router, cambiar una convención de nombres en todo el proyecto.

Cómo funciona:

  1. Abre el Composer con Cmd+I (Mac) o Ctrl+I (Windows/Linux).
  2. Elige los archivos que quieres incluir, o deja que Cursor los detecte automáticamente según tu descripción.
  3. Describe el cambio: "Añade autenticación de usuario con página de login, middleware de sesión y actualización del navbar para mostrar el usuario logueado".
  4. Cursor genera los cambios en todos los archivos afectados y te muestra los diffs.
  5. Revisas cada diff y aceptas o rechazas cada cambio individualmente.

El paso 5 es crítico. No aceptes todo a ciegas. Cursor puede generar cambios coherentes entre sí pero que no encajan con decisiones de arquitectura que tomaste hace tres meses y que no están documentadas en el código.

Agent Mode: Composer en modo autónomo

Dentro del Composer existe un modo agente que va más lejos: no solo edita archivos, también puede ejecutar comandos de terminal por su cuenta y decidir qué archivos crear o modificar sin que tú los especifiques. Es útil cuando el alcance de una tarea es difuso y no sabes exactamente qué archivos va a tocar.

La advertencia importante: ejecuta comandos de terminal automáticamente. Las fuentes disponibles no detallan qué controles de permisos o confirmaciones hay antes de que ejecute algo. Úsalo con za, especialmente en proyectos con scripts que modifican datos o hacen deploys. No es el modo para dejar corriendo mientras te vas a comer.


Configuración de modelos: lo que sí puedes tocar

Desde los ajustes de Cursor puedes cambiar el modelo que usa bajo el capó o añadir tus propias API keys si tienes acceso a modelos externos. Esto te permite balancear velocidad, calidad y coste según el tipo de tarea.

Para proyectos con código sensible, también puedes ajustar las opciones de privacidad para controlar qué datos se envían. Revisa esto antes de Cursor en proyectos con información confidencial.

Qué modelo es "el mejor" ahora mismo es una pregunta que no tiene respuesta fija: el cambia cada pocas semanas y cualquier recomendación concreta tiene fecha de caducidad. Lo que sí puedes hacer es probar con una tarea real y comparar resultados.


Los tres errores que comete todo el mundo el primer día

1. referencias de archivo incorrectas en los prompts

Cursor es mucho más preciso cuando le dices explícitamente en qué archivo basar su trabajo. En lugar de "crea un componente Card", prueba: "Basándote en los patrones de src/components/Button.tsx, crea un nuevo componente Card con la misma estructura". Cursor coge el estilo, los tipos y las convenciones del archivo de referencia.

2. Lanzar tareas enormes desde el primer momento

El Composer puede hacer cosas grandes, pero si tu primer intento es "conviérteme esta aplicación de Express a NestJS", el resultado va a ser una mezcla de código generado que necesita revisión exhaustiva. Empieza por tareas acotadas: refactoriza una función, añade tests a un módulo, extrae una utilidad. Construye confianza en lo que Cursor hace bien antes de delegarle una migración entera.

3. No revisar los diffs

Cursor produce código plausible. Plausible no es lo mismo que correcto. El código generado puede pasar el linter, tener la estructura correcta y aun así tener un bug lógico que solo ves si lo lees. Tratar los diffs como "aceptar todo" es el camino más rápido a meter deuda técnica sin darte cuenta.


El flujo de trabajo para el primer día

Si quieres un plan concreto para estrenar Cursor sin perderte:

  1. Instala y conecta tu proyecto real, no un proyecto de prueba vacío.
  2. Deja que indexe, abre la carpeta y espera a que termine el escaneo inicial.
  3. Prueba Tab Autocomplete escribiendo una función que ya sabes cómo va. Compara lo que sugiere con lo que harías tú.
  4. Usa Inline Editing (Cmd/Ctrl+K) en una función que necesite refactorización pequeña. Escribe un prompt específico.
  5. Abre el chat (Cmd/Ctrl+L) y pregunta algo sobre tu propio código: "¿Cómo fluye la autenticación en este proyecto?"
  6. Guarda el Composer para el segundo día, cuando ya tienes intuición de cómo responde el modelo a tus prompts.

La curva de aprendizaje de Cursor no está en instalar ni en aprender atajos. Está en aprender a escribir prompts que le den contexto suficiente para que sus sugerencias sean útiles. Eso se aprende usándolo, no leyendo sobre ello.

Abre el editor.

Fuentes

  1. Guía de configuración de Cursor AI: Cómo empezar con el desarrollo asistido por IAtruefoundry.com
  2. Tutorial de Cursor AI para Principiantes: Guía Completa 2026 | NxCodenxcode.io · 2026-01-03