Curso
Si has hecho clic en este artículo, probablemente utilices uno de los agentes de codificación basados en IA existentes y quieras ver cómo se compara Roo Code. Bueno, si tuviera que resumir Roo Code en pocas palabras, diría:
- Código abierto
- Múltiples modos de interacción y perfiles
- Tareas boomerang
- Sistema de puntos de control similar a Git
- Personalización profunda
- Gestión avanzada del contexto
Estas son las ventajas que ofrece Roo Code además de las funciones comunes que ofrecen todos los agentes de codificación con IA, como compatibilidad con MCP, chat de código base, ejecución de comandos de terminal y edición de archivos.
En este tutorial, vamos a explorar Roo Code y todas sus características mencionadas en profundidad y compararlo con Cline. Repasaremos ejemplos prácticos y veremos cómo sus diferentes modos de interacción lo hacen destacar en el saturado mercado de los agentes de IA.
¿Qué es Roo Code y para qué sirve?
Roo Code es un asistente de codificación de IA de código abierto que funciona como una extensión de VS Code. A diferencia de las herramientas típicas de autocompletado, funciona como un socio de desarrollo personalizable que puede crear archivos, ejecutar comandos de terminal, navegar por sitios web y gestionar tareas de varios pasos en modos especializados. Obtienes un control detallado sobre todo, desde los permisos de aprobación automática hasta los proveedores de indexación de código base.
La herramienta es compatible con múltiples proveedores de IA, entre los que se incluyen Anthropic, OpenAI, Google Gemini, AWS Bedrock y modelos locales a través de Ollama. Comprende grandes bases de código mediante indexación semántica configurable e incluye automatización del navegador, MCP y condensación contextual inteligente para proyectos complejos.
Esto es lo que distingue a Roo Code:
- Múltiples modos de interacción: Cambia entre los modos Arquitecto (planificación), Código (implementación), Preguntar (preguntas), Depurar (resolución de problemas) y personalizados para las diferentes fases de desarrollo.
- Perfiles de configuración: Asigna diferentes modelos y configuraciones de IA a modos específicos, como usar o3 para la planificación de la arquitectura y Claude Sonnet 4 para la ejecución de código.
- Tareas de Boomerang: Coordinar flujos de trabajo complejos que se mueven automáticamente entre diferentes modos y perfiles.
- Gestión avanzada del contexto: Configura los límites de contexto, habilita la condensación automática y controla exactamente qué información se incluye en cada conversación.
- Indexación personalizable del código base: Elige tus propios proveedores de incrustación y bases de datos vectoriales para la búsqueda semántica de código, con control total sobre el comportamiento de la búsqueda y la privacidad.
Esta combinación convierte a Roo Code de un simple asistente en un entorno de desarrollo configurable que se adapta a tus patrones de flujo de trabajo y se adapta a los requisitos del proyecto.
Instalación y configuración de Roo Code
Roo Code se puede instalar fácilmente a través del mercado de extensiones de VS Code:

Después de la instalación, reinicia VS Code (o Cursor, Windsurf) y la extensión Roo Code aparecerá en la barra lateral izquierda. Haz clic en él y sigue las instrucciones que aparecerán en pantalla, que te guiarán a través del proceso de creación de la cuenta y la configuración inicial. A continuación, deberías ver esta interfaz:

A continuación, deberás seleccionar un proveedor de modelos en la configuración, ya que Roo Code es de código abierto y no incluye créditos prepagados:

Roo Code trabaja con todos los proveedores de IA, tanto grandes como pequeños. Aunque yo personalmente utilizo exclusivamente modelos Claude, puedes optar por routers de terceros como OpenRouter, Requesty o soluciones empresariales como Google Vertex y AWS Bedrock. Te sugiero que empieces con OpenRouter.
Roo Code ofrece un crédito de 5 $ y puedes configurarlo con una sola clave API y tener acceso a todos los modelos que aloja OpenRouter (casi cualquier modelo que se te ocurra). Después de configurar la clave API de OpenRouter, asegúrate de desplazarte hacia abajo en la misma página de configuración y habilitar el razonamiento para el modelo elegido (en este tutorial utilizaremos Claude 4 Sonnet):

¡Ya estás listo para empezar a usar Roo Code!
Cómo utilizar el código Roo: 7 ejemplos prácticos
En esta sección, exploraremos todas las características principales de Roo Code mientras creamos un sencillo juego de tres en raya de 4x4. Este ejemplo es lo suficientemente sencillo como para mantener bajos los costes de la API para la experimentación, a la vez que es lo suficientemente completo como para mostrar todas las funciones.
¡Empecemos!
Configuración de la aprobación automática
Al principio, mencionamos que Roo Code permite un control casi total sobre el comportamiento del agente de codificación. Esta afirmación se refleja en todas las funciones que ofrece Roo Code, empezando por la configuración de aprobación automática:

El control granular sobre la configuración de aprobación automática es importante porque te permite decidir exactamente qué acciones de IA se realizan automáticamente y cuáles necesitan tu aprobación previa. Puedes permitir que las tareas rutinarias, como las ediciones rápidas de código, se realicen sin interrupciones, mientras que las acciones más importantes, como la eliminación de archivos o los comandos de terminal, se someten a una revisión manual para evitar sorpresas indeseadas.
Uso de diferentes modos en Roo Code
Roo Code adopta un enfoque reflexivo del desarrollo basado en la inteligencia artificial que lo diferencia de herramientas como Cursor o Windsurf. Mientras que la mayoría de los IDE agenticos te llevan directamente al modo de ejecución en el momento en que describes lo que deseas, Roo Code reconoce que lanzarse a programar sin una planificación adecuada suele acarrear problemas.
Quiero crear un juego de tres en raya de 4x4 en Python con una interfaz de terminal limpia.
El juego debe admitir dos jugadores por turnos, detectar victorias en filas, columnas,
y diagonales, y tiros con el mango. Debe tener elementos de color, no solo blanco y negro, pero el sistema de colores debe ser minimalista.
Piensa en las desventajas de la ejecución inmediata: código que no se ajusta a tu arquitectura general, implementaciones apresuradas que generan deuda técnica y soluciones que pasan por alto casos extremos porque no hubo tiempo para analizar los requisitos. Estos problemas se agravan con el tiempo, creando dolores de cabeza en cuanto al mantenimiento y obligándote a revisar trabajos que se suponían «terminados».
Por eso Roo Code ofrece diferentes modos de interacción para las distintas fases del desarrollo de software:
- Modo arquitecto: Planificar y diseñar antes de la implementación
- Modo de código: Escribir, modificar y refactorizar código.
- Modo de consulta: Obtener respuestas y explicaciones
- Modo de depuración: Diagnosticar y solucionar problemas de software.
- Modo Orchestrator (tareas boomerang): Coordinar tareas en múltiples modos
- Modos personalizados: Crea tus propios perfiles especializados, como redactor de documentación o experto en refactorización.
Puedes cambiar de modo desde el menú desplegable situado en la esquina inferior izquierda o utilizar comandos de barra como /ask, /architect, /debug, /code en el campo de chat. Aprecio especialmente que haya un modo específico para hacer preguntas que no afectan al proyecto ni a su código, algo que hago constantemente en mis proyectos. En otros IDE, esto significa cambiar a un nuevo hilo de chat o utilizar chatGPT/Anthropic, lo que siempre interrumpe mi flujo de trabajo.

Estos modos no son solo variaciones de un único agente con diferentes indicaciones. Cada modo incluye herramientas predefinidas y permisos de acceso establecidos por el equipo de Roo Code. Por ejemplo, mientras que el modo Arquitecto es de solo lectura en tu proyecto, el modo Código tiene acceso a todas las herramientas, como edición, comandos de terminal y MCP.

El modo de depuración merece una mención especial porque utiliza un enfoque matemático para reducir las posibilidades de errores, con instrucciones personalizadas para reflexionar, destilar posibilidades, añadir registros (algo que los LLM rara vez hacen a menos que se les indique explícitamente) y confirmar antes de corregir.
Funciones adicionales que los hacen aún más potentes:
- Modelos destacados: Puedes asignar a cada modo un modelo de IA diferente, como o3 para Architect y Claude Sonnet 4 para la ejecución de código (una potente combinación). Estos modelos asignados persisten incluso al cambiar de modo o reiniciar VS Code.
- Conmutación sensible al contexto: Roo puede solicitar permiso para cambiar de modo durante una tarea en función del contexto, lo que garantiza que siempre utilices la herramienta adecuada para cada trabajo.

- Personalización completa: Si los modos integrados no satisfacen tus necesidades, puedes modificar sus indicaciones del sistema (aunque no es recomendable), añadir instrucciones personalizadas o crear modos totalmente personalizados para tus tareas específicas. Consulta la documentación sobre los modos personalizados para obtener instrucciones detalladas sobre cómo crear tus propios perfiles especializados.

Juego final generado por Roo. La parilla de referencia de posición parece desviada porque todos los LLM tienen problemas para contar y alinear la salida en la terminal.
Uso de perfiles de configuración
Otra característica única de Roo Code es la posibilidad de crear perfiles de configuración personalizados. Si bien los modos de interacción determinan el comportamiento del agente, los perfiles de configuración te permiten personalizarlo a nivel de API mediante la creación de diversas configuraciones LLM con diferentes ajustes de modelo.
Cuando hayas configurado un proveedor como OpenRouter, verás un perfil predeterminado junto al modo de interacción en la esquina inferior izquierda de la interfaz. Al abrir la configuración, se observa que este perfil predeterminado contiene configuraciones específicas para el modelo elegido, como Claude 4 Sonnet, con límites de razonamiento, límites de velocidad y parámetros de temperatura específicos.

Al hacer clic en el icono más, puedes crear perfiles de configuración adicionales que luego podrás asignar a diferentes modos de interacción. Esto abre algunas posibilidades interesantes:
- Para un modo de redacción de documentación personalizado, puedes elegir Gemini 2.0 Flash con baja temperatura para crear documentación rápidamente.
- Crea otro perfil con el máximo número de fichas de pensamiento para el modo arquitecto o el modo depuración cuando necesites planes estratégicos complejos o correcciones de errores persistentes.
- Configura diferentes ajustes de temperatura para tareas creativas frente a trabajos analíticos.
- Configura perfiles especializados para diferentes proveedores de modelos, cambiando entre OpenAI, Anthropic o modelos locales en función de la tarea.
La capacidad de emparejar modelos y configuraciones específicos con modos de interacción específicos te ofrece un control que no encontrarás en otras plataformas de agentes. Podrías tener o3 mini gestionando tu planificación arquitectónica mientras Claude Sonnet 4 ejecuta el código real, cada uno con su propia configuración optimizada.
Configuración de indexación del código base
Roo Code te permite configurar otro aspecto de sí mismo que la mayoría de las plataformas de codificación agenticas mantienen bloqueado: la indexación del código base. Esta función permite realizar consultas en lenguaje natural como «¿Cómo se gestiona la autenticación?» o «Muéstrame dónde se eliminan los registros de clientes», incluso cuando no conoces funciones o nombres de archivo específicos.

Mientras que otros IDE ocultan sus proveedores de integración a los usuarios, Roo Code te ofrece un control total sobre cómo se indexa y se busca tu código base. Esta transparencia es importante porque los diferentes modelos de integración destacan en distintas tareas, y es posible que desees un procesamiento local para proyectos confidenciales o soluciones en la nube por comodidad.
El sistema requiere dos componentes para funcionar:
- Un proveedor de incrustación para convertir código en vectores buscables.
- Una base de datos vectorial para almacenar y buscar esos vectores.
Para el proveedor de incrustación, puedes elegir entre:
- Google Gemini (actualmente gratuito y recomendado para empezar)
- OpenAI (modelos de incrustación de texto)
- Ollama (para un funcionamiento totalmente local)
- Proveedores compatibles con OpenAI (como las implementaciones de Azure)
Para la base de datos vectorial, tus opciones incluyen:
- Qdrant Cloud con un nivel gratuito para experimentar
- Qdrant local ejecutándose en Docker para una privacidad total
Probar ambas configuraciones no cuesta nada.
Además de elegir tus proveedores, Roo Code te permite ajustar el comportamiento de búsqueda:
- Uso de la puntuación de búsqueda: Controla el grado de similitud que debe tener el código para coincidir con tu consulta. Los valores más bajos (0,15-0,3) arrojan resultados más amplios, adecuados para la exploración, mientras que los valores más altos (0,6-0,8) solo ofrecen coincidencias precisas. El valor predeterminado de 0,4 equilibra la precisión y la cobertura.
- Resultados máximos de búsqueda: Establece cuántos fragmentos de código se devuelven en una sola búsqueda para controlar el contexto sin sobrecargar la IA.
La flexibilidad de configuración ofrece varias ventajas:
- Búsqueda semántica: Busca el código por su significado en lugar de por palabras clave exactas.
- Descubrimiento entre proyectos: Busca en todos los archivos, no solo en los que están abiertos actualmente.
- Reconocimiento de patrones: Localiza implementaciones y patrones de código similares en todo tu proyecto.
- Control de privacidad: Mantén todo local con Ollama y Docker Qdrant, o utiliza proveedores de nube para mayor comodidad.
El sistema de indexación respeta los patrones de ignorar de tu proyecto desde .gitignore y .rooignore, por lo que no perderá tiempo procesando carpetas de dependencias como node_modules. También supervisa los cambios en los archivos y actualiza el índice automáticamente, por lo que tus búsquedas se mantienen actualizadas mientras programas.
Configuración del contexto
La ventana de contexto es quizás la restricción más importante de los modelos de codificación. El tamaño de la ventana determina la cantidad de información que la IA puede tener en cuenta a la vez, lo que afecta directamente a su capacidad para comprender tu proyecto y tomar decisiones informadas sobre varios archivos.
Por eso es fundamental la ingeniería de contexto, que es el proceso de diseñar el flujo de información que se introduce en el contexto del modelo. Una vez más, Roo Code te permite tener un control de bajo nivel sobre lo que entra en el contexto y lo que no.

En la configuración, hay un panel independiente para configurar el contexto. Desde ahí, puedes ver las opciones para configurar:
- Límite de contexto de pestañas abiertas: Controla cuántos archivos abiertos se incluyen automáticamente.
- Límite de contexto de los archivos del espacio de trabajo: Establece el número máximo de archivos del espacio de trabajo que se pueden leer.
- Límite de lecturas simultáneas de archivos: Gestiona cuántos archivos se pueden procesar simultáneamente.
- Líneas leídas por archivo: Limita el número de líneas leídas de cada archivo (-1 para todo el archivo).

Si te desplazas hacia abajo en el mismo panel, verás otra opción para activar automáticamente la condensación contextual inteligente. Lo que hace es que, cuando la ventana de contexto se llena hasta un determinado umbral, se activa un mensaje de resumen personalizado (que puedes escribir tú mismo). Esto condensa el contexto a solo el resumen, liberando espacio para continuar la conversación y tu trabajo.
En entornos de desarrollo integrado (IDE) como Cursor o Windsurf, tienes que cambiar a un nuevo hilo de chat cuando alcanzas los límites de contexto. Al hacerlo, se pierde la información del hilo actual o tienes que realizar una ingeniería manual para trasladar la información al nuevo hilo de chat.
Ejecución y configuración de comandos en el terminal
Roo Code puede conectarse automáticamente al terminal interno de VS Code, ejecutar comandos y leer los resultados en tiempo real. Si lo prefieres, también ofrece una opción de terminal en línea más rápida que muestra los resultados directamente en la interfaz del chat.
Aunque la ejecución de terminales existe en otras plataformas de agentes, las opciones de personalización de Roo Code lo diferencian del resto. El sistema de integración de terminal funciona automáticamente sin necesidad de configuración y te ofrece varias capacidades:
- Ejecuta comandos y lee los resultados sin necesidad de copiar y pegar manualmente.
- Detecta y corrige automáticamente los errores en las aplicaciones en ejecución.
- Programa de los códigos de salida de los comandos y los cambios en el directorio de trabajo.
- Deja de ejecutar comandos directamente desde la interfaz de chat.

Puedes configurar varias opciones específicas del terminal en los ajustes:
- Límite de salida del terminal: Controla la cantidad de salida de comandos que se captura y se añade al contexto (por defecto: 500 líneas)
- Comprimir la salida de la barra de progreso: Procesa la salida dinámica, como las barras de progreso, de forma más limpia, mostrando solo el estado final en lugar de cada actualización.
- Desactiva la integración del terminal del shell: Cuando está marcado (recomendado), Roo utiliza su terminal en línea. Cuando no está marcado, ejecuta comandos dentro del panel de terminal de VS Code.
El sistema también gestiona bien configuraciones complejas de terminal. Si utilizas ZSH con Oh My Zsh y powerlevel10k, u otras configuraciones personalizadas, Roo Code ofrece soluciones específicas y ajustes de tiempo de espera para los terminales que tardan más en inicializarse. También hay opciones específicas para usuarios de PowerShell en configuraciones de Windows y WSL.
Características relacionadas con la calidad de vida
Además de las principales características que hemos mencionado, Roo Code incluye muchas mejoras bien pensadas que hacen que el desarrollo diario sea más fluido y productivo.
Menciones contextuales para recopilar información exhaustiva
Las menciones @ en contexto son una forma muy eficaz de incluir información específica directamente en tus conversaciones. Puedes hacer referencia a archivos, carpetas, salidas de terminal, confirmaciones de git, problemas de VS Code e incluso imágenes utilizando el símbolo @ en el campo de entrada del chat. Esto facilita proporcionar a Roo Code exactamente el contexto que necesita sin tener que copiar y pegar manualmente.
Integración de MCP con el mercado de un solo clic
Roo Code ofrece una sólida integración MCP (Protocolo de contexto de modelo) con un mercado dedicado para la instalación de servidores con un solo clic. Aunque actualmente el mercado ofrece opciones limitadas, puedes contribuir abriendo solicitudes de incorporación de cambios para añadir servidores MCP oficiales al repositorio de código Roo. Esto abre el acceso a herramientas y servicios externos especializados que amplían las capacidades de Roo Code mucho más allá de las funciones integradas.
Gestión de puntos de control con Git sombra
La gestión de puntos de control funciona a través de un repositorio Git oculto que se ejecuta junto con tu código existente. Esto proporciona una red de seguridad para tu trabajo, permitiéndote crear puntos de restauración y realizar un seguimiento de los cambios sin interferir en tu flujo de trabajo habitual con Git. Si algo sale mal durante el desarrollo, puedes volver fácilmente a estados anteriores.
Gestión del chat y seguimiento de costes
Una ventana dedicada a la gestión del chat te ayuda a organizar tus conversaciones filtrándolas por espacio de trabajo, fecha de creación, uso de tokens, consumo de la ventana de contexto y costes reales de la API. Esta visibilidad de los patrones de uso y los gastos te ayuda a comprender y controlar los costes de desarrollo de la IA, al tiempo que mantienes tu trabajo organizado.
Modo importación/exportación y mercado
Puedes importar y exportar modos personalizados como archivos de texto, lo que facilita compartir prácticas de codificación entre los miembros del equipo. También hay un mercado independiente para modos en el que puedes aportar tus modos personalizados para que otros los utilicen con importaciones de un solo clic. Esto ayuda a estandarizar los enfoques entre los equipos y a compartir flujos de trabajo probados.
Optimización integrada de indicaciones
Un botón siempre visible en el campo de entrada del chat te permite optimizar y mejorar tus mensajes antes de enviarlos. Incluso puedes escribir tu propio «optimizador de indicaciones» en la página de configuración dedicada, adaptando el proceso de optimización a tus necesidades y estilo específicos.
Acciones del navegador a través del uso del ordenador
Puedes habilitar las acciones del navegador a través de las funciones de uso del ordenador en la configuración. Esto permite a Roo Code interactuar directamente con aplicaciones web, lo que abre nuevas posibilidades para realizar pruebas, extraer datos de páginas web e interactuar de forma automatizada con herramientas basadas en navegadores.
Para obtener más información sobre cómo sacar el máximo partido a estas funciones, consulta la página de consejos y trucos en la documentación de Roo Code.
Cline contra Código Roo
Roo Code y Cline comparten ADN, pero han evolucionado en direcciones diferentes. Roo Code comenzó en realidad como «Roo Cline», una bifurcación del proyecto Cline original. Los programadores detrás de Roo Code vieron potencial en la base de Cline, pero querían llevarlo más allá: alejarse de las dependencias de LangChain, mejorar el rendimiento y añadir características como múltiples modos de interacción y opciones de personalización profunda. El cambio de marca a «Roo Code» reflejó esta visión más amplia y un enfoque más claro hacia los programadores.
Mientras que Cline hace hincapié en la simplicidad y la colaboración, Roo Code apuesta por el control y la flexibilidad. El enfoque «human-in-the-loop» (con intervención humana) de Cline implica que cada acción necesita aprobación, lo que resulta perfecto para los programadores que desean participar en cada decisión. Roo Code toma un camino diferente con su sistema de modos, que te permite cambiar entre el modo Arquitecto, dedicado exclusivamente a la planificación, el modo Código, centrado en la ejecución, o el modo Depuración, especializado. Este control granular se extiende a todo, desde los proveedores de indexación del código base hasta los límites de salida de los terminales.
Los conjuntos de características reflejan estas diferentes filosofías:
- Puntos fuertes de Cline: Separación entre planificación y ejecución, sistema de banco de memoria, configuración más sencilla, integración activa con el mercado MCP, gestión de puntos de control tras cada llamada a la herramienta.
- Puntos fuertes de Roo Code: Múltiples modos de interacción, perfiles de configuración, indexación personalizable del código base, tareas boomerang para flujos de trabajo complejos, condensación de contexto.
- Características compartidas: Código abierto, compatibilidad con MCP, control de puntos de verificación/versiones, reglas personalizadas, precios de pago por uso.
Elige en función de tu estilo de desarrollo y tus necesidades. Cline funciona mejor cuando se necesita un socio de IA sencillo que te mantenga informado de cada cambio, ideal para un desarrollo cuidadoso y metódico o cuando se trabaja con códigos críticos. Roo Code es ideal para programadores que desean ajustar el comportamiento de su asistente de IA, experimentar con diferentes modos de funcionamiento o necesitan configuraciones especializadas para diferentes tipos de proyectos. Ambas herramientas respetan tu control sobre el proceso de desarrollo; simplemente ofrecen diferentes niveles de personalización para lograrlo.
Conclusión y recursos adicionales
Roo Code está dirigido a usuarios avanzados que trabajan en proyectos grandes y complejos que requieren una gestión cuidadosa del contexto y un control preciso del comportamiento de los agentes. Para proyectos pequeños y medianos o prototipos rápidos, los requisitos de configuración de Roo Code pueden ser excesivos. Si acabas de empezar con la programación basada en IA, te recomiendo que empieces con Cline por su enfoque más sencillo, o incluso Cursor, que es un chatGPT avanzado directamente en tu VS Code.
Roo Code funciona mejor cuando eres un usuario experimentado que ya entiende los agentes de codificación basados en IA y deseas tener un control total sobre tus flujos de trabajo. El tiempo dedicado a aprender sus sistemas de configuración vale la pena cuando necesitas funciones como asignaciones de modelos específicos para cada modo, indexación personalizada del código base o coordinación de tareas boomerang.
Para obtener más recursos sobre asistentes de programación de IA, consulta estos recursos:

Soy un creador de contenidos de ciencia de datos con más de 2 años de experiencia y uno de los mayores seguidores en Medium. Me gusta escribir artículos detallados sobre IA y ML con un estilo un poco sarcastıc, porque hay que hacer algo para que sean un poco menos aburridos. He publicado más de 130 artículos y un curso DataCamp, y estoy preparando otro. Mi contenido ha sido visto por más de 5 millones de ojos, 20.000 de los cuales se convirtieron en seguidores tanto en Medium como en LinkedIn.


