¿CON QUÉ IA?

Caso de usoProgramación

Reescribir un programa de TypeScript a Rust con agentes de Copilot

Ingenieros de GitHub usaron agentes de Copilot para reescribir en Rust, en 128 propuestas, unas 800.000 líneas del motor de Copilot.

ParaprogramarConGitHub CopilotLo contó github.blogDificultad avanzada

A quién le sirve. Equipos de desarrollo que quieren pasar parte de un programa a otro lenguaje sin parar el producto, en un caso de gran escala y de programadores cuyo método de pasos pequeños vale para proyectos menores.

Qué hicieron

Un desarrollador, Stephen Toub, usó la aplicación y la línea de comandos de Copilot para trasladar el motor de ejecución sobre la marcha, un componente por propuesta de cambios. Cada propuesta sustituía TypeScript por una capa fina que llamaba a Rust y mantenía en marcha las pruebas completas existentes. Las sesiones principales lanzaban sesiones hijas, cada una en su propia copia de trabajo, además de subagentes. Él comprobaba los resultados, cuestionaba decisiones y hacía cumplir los controles de calidad.

Cómo salió

El motor pasó a ser 100 % Rust, unas 832.000 líneas de producción, repartidas en 128 propuestas durante unas 14,5 semanas. Unas pocas regresiones (fallos que reaparecen) se corrigieron rápido, y la publicación dice que el rendimiento mejoró en órdenes de magnitud.

Conviene saber

Quince agentes compilando a la vez bloquearon su portátil. Lo arregló dejando compilar solo al agente principal y, después, haciendo que una sesión de chat repartiera el permiso de compilar a una sesión cada vez.

Qué necesitas

  • GitHub Copilot (aplicación y línea de comandos) con un plan que incluya agentes
  • Un conjunto completo de pruebas que se pueda lanzar tras cada cambio
  • El código de origen y alguien que conozca el lenguaje de destino
  • Un ordenador con potencia suficiente si vas a lanzar varios agentes a la vez
  • Una persona que revise cada propuesta de cambios

Cómo hacerlo tú, paso a paso

  1. Define el componente que quieres migrar y por qué. Empieza por uno solo.
  2. Comprueba que tienes pruebas completas y que pasan antes de tocar nada.
  3. Pega el prompt de la ficha: que escriba un plan que divida el trabajo en propuestas pequeñas y revisables, y que te lo enseñe antes de empezar.
  4. Avanza de una en una. Cada propuesta sustituye parte del código antiguo por una capa fina que llama al código nuevo, y debe pasar las pruebas existentes.
  5. Pide que anote las diferencias de comportamiento que encuentre.
  6. Revisa cada propuesta, cuestiona las decisiones y exige los controles de calidad antes de aceptarla.
  7. Si lanzas varios agentes a la vez, limita quién puede compilar al mismo tiempo.
Pruébalo con GitHub Copilot
Quiero migrar [módulo o componente] de [propietario/repositorio] de [lenguaje actual] a [lenguaje de destino]. Primero escribe un plan que divida el trabajo en propuestas de cambios pequeñas que se puedan revisar por separado y enséñamelo antes de empezar. Después avanza de una en una, haciendo que cada propuesta pase las pruebas existentes, y enumera las diferencias de comportamiento que encuentres. Habrás terminado cuando todas las propuestas del plan estén listas para revisión.

Consejos

  • Quince agentes compilando a la vez bloquearon el portátil del autor. Deja compilar a un agente cada vez.
  • Migra por componentes, con propuestas pequeñas que se puedan revisar y deshacer por separado.
  • Las pruebas existentes son tu red de seguridad. Si no las tienes, escríbelas antes de migrar.

Preguntas frecuentes

¿Se puede hacer sin parar el producto?

Sí, ese es el enfoque: cada propuesta sustituye un componente por una capa fina que llama al código nuevo y mantiene las pruebas en marcha.

¿Tiene sentido en un proyecto pequeño?

El método sí, con un solo agente y pocas propuestas. No hace falta lanzar sesiones en paralelo.

¿Qué riesgos hay?

Las regresiones, es decir, fallos que reaparecen. En el caso aparecieron pocas y se corrigieron rápido gracias a las pruebas y a la revisión; sin ellas, el riesgo sube.

Fuentes

En el directorio desde el 13 de octubre de 2026.

Parecidos

  1. Encargar pequeños cambios de una web al agente de Copilot

    Un autor encargó al agente de programación de Copilot dos cambios pequeños en su web; abrió borradores de cambios y el de espaciado valió para aceptarse.Casomanjit28 en MediumGitHub Copilot2 fuentesDificultad avanzada
  2. Dejar que el agente de Copilot escriba y suba código

    Un desarrollador vio que el agente entiende bien el contexto y el código, pero subió el trabajo a una rama, dejó main vacía y pasó horas comprobando.Casoorgs/community en GitHubGitHub CopilotDificultad avanzada
  3. Repetir una tarea hasta acabarla con Copilot CLI: autopilot y fleet

    El autor usó autopilot para iterar hasta terminar y /fleet para repartir el trabajo entre subagentes en paralelo; en tareas pequeñas hay sobrecarga.Casodaninacan.comGitHub CopilotDificultad avanzada
  4. Usar el modo agente de Copilot para lanzar comandos en terminal

    Usuarios cuentan que el modo agente de Copilot a veces no lee la salida del terminal y deshace código correcto; cambiar de shell ayuda.Casoorgs/community en GitHubGitHub CopilotDificultad avanzada
  5. Evaluar candidatos frente a los niveles de competencias

    Una persona montó un agente de selección básico con las definiciones y niveles de competencias de su empresa para tareas de RR. HH.Casor/humanresources en RedditGitHub CopilotDificultad media
  6. Llevar una empresa en solitario con ocho agentes por departamento

    Un fundador creó ocho agentes (dirección, finanzas, operaciones, legal, contable, marketing, técnico y mejorador) que comparten memoria y se consultan.Caso@setas en DEVGitHub CopilotDificultad avanzada

Más: todo con GitHub Copilot · todo sobre programación

Cada lunes, lo nuevo en tu correo

Lo que ha salido esa semana, las skills que más suben y tres casos que puedes copiar.

Un correo a la semana. Te das de baja con un clic.