Skip to main content

Agentes de Codificación y Edits Multi‑Archivo

Esta página cubre Copilot Coding Agent y Copilot Edits (edit mode vs agent mode), comparando con soluciones alternativas.

1. Conceptos

TérminoDefinición
Edit ModeModo interactivo: delimitas archivos y aceptas/rechazas cada propuesta
Agent ModeModo autónomo: el agente decide archivos y pasos hasta cumplir la tarea
Multi-file EditsCapacidad de modificar múltiples archivos con un único prompt estructurado

2. GitHub Copilot

Edit Mode: Control granular, ideal para cambios focalizados (renombrar hook, ajustar tipados).

Agent Mode: Encapsula planificación → ejecución → validación. Puede ejecutar comandos (scripts/test) y iterar hasta cerrar la tarea asignada al issue.

Casos de Uso Recomendados

CasoModoEjemplo en Repo
Refactor local de hookEditExtraer lógica retry de useFetchData
Añadir dark mode completoAgentCrear themes.css, actualizar tailwind.config.js, añadir toggle Layout
Migrar librería de authAgentSustituir mock por cliente real y actualizar context
Ajustar nombres de tiposEditRenombrar project.ts interfaz a Project canonical

3. Alternativas

HerramientaEnfoqueDiferenciadorRiesgo
Sweep AIPR automáticos desde issuesMapea tareas → PR con resumenPuede generar cambios amplios inesperados
AiderChat terminal con patch incrementalControl rebases/diffs finosRequiere manejo manual contexto
Cursor AgentIntegrado en editorNavegación de cambios rápida, UISobregeneración si prompt ambiguo
Devin (experimental)Autonomía amplia (full stack)Tareas largas multi‑pasoMadurez / coste computacional

4. Flujo Sugerido (Issue → PR)

  1. Crear issue con título claro + criterios aceptación.
  2. Asignar issue al Copilot Coding Agent.
  3. Revisar PR generado: validar diffs, tests y coverage.
  4. Pedir en Chat: "Resume cambios y su racional técnico" (validar consistencia).
  5. Merge tras pasar checks CI.

Plantilla Issue (Agente)

## Objetivo
Implementar dark mode class-based (Tailwind) con toggle persistente.

## Alcance
- Añadir tokens variables CSS (themes.css)
- Configurar `darkMode: 'class'` en tailwind.config.js
- Toggle en Layout con almacenamiento local (localStorage)
- Actualizar documentación `recreacion.md`

## Criterios de Aceptación
- Switch visible en header
- Estado persiste tras refresh
- Prefiere preferencia del usuario, fallback al system
- Lint y tests verdes

5. Métricas / Evaluación

MétricaObjetivo
Iteraciones promedio por issue≤ 3
Tiempo hasta PR (p50)< 10 min
Reversiones post-merge0 frecuentes
Cobertura tests en cambios≈ baseline

6. Buenas Prácticas

  • Empezar con issues bien acotados (≤ 1 módulo).
  • Evitar mezclar refactor + feature en mismo ticket.
  • Revisar plan inicial del agente si lo provee ("plan:" / "steps:").
  • Forzar tests si el agente no los propone ("añade test" explícito).

Siguiente: code-review.md para revisión asistida.