GitHub Copilot · Agent Mode · Programación con IA

GitHub Copilot Agent Mode: cómo programar con un agente autónomo

Aprende cómo funciona GitHub Copilot Agent Mode para ejecutar tareas de programación de varios pasos: analizar repositorios, planificar, buscar archivos, editar código, ejecutar comandos, utilizar herramientas, corregir errores, lanzar tests, delegar en Subagents, trabajar con Worktrees, restaurar checkpoints y revisar todos los cambios antes de integrarlos.

Agent Loop Tools Subagents Worktrees
Respuesta rápida

¿Qué es Agent Mode en GitHub Copilot?

Agent Mode es el modo de GitHub Copilot diseñado para ejecutar tareas de programación de varios pasos de forma agentic. En vez de limitarse a responder una pregunta, Copilot puede buscar archivos relevantes, leer código, modificar varios archivos, utilizar terminal, ejecutar tests, interpretar errores y repetir el ciclo hasta completar el objetivo o necesitar intervención del usuario.

Capacidades

Qué hace realmente Copilot Agent Mode

READ

Explora

Busca y lee archivos relevantes.

PLAN

Razona

Decide qué pasos necesita ejecutar.

EDIT

Edita

Modifica uno o múltiples archivos.

CMD

Ejecuta

Utiliza terminal y herramientas.

TEST

Verifica

Ejecuta tests, lint y build.

LOOP

Itera

Corrige errores encontrados.

Publicidad
Agent Loop

Así funciona el ciclo interno de un agente de programación

01 · CONTEXT

Contexto

Prompt, archivos, instrucciones y estado del proyecto.

02 · TOOL

Tool Call

Busca, lee, edita o ejecuta.

03 · RESULT

Resultado

La tool devuelve nueva información.

04 · LOOP

Iteración

Copilot decide el siguiente paso.

Publicidad
Diferencia

Copilot Chat vs Agent Mode

Ask

Conversación

Explicar, analizar y responder preguntas.

Agent

Ejecución

Utilizar herramientas para completar una tarea.

Regla práctica

Si quieres entender algo, utiliza Ask. Si quieres que Copilot implemente una tarea sobre el proyecto, utiliza Agent.

Plan Mode

Planificar antes de permitir cambios

Para tareas complejas, conviene comenzar con Plan.

Necesitamos añadir
autenticación OAuth.

Investiga el proyecto
y crea un plan.

Incluye:

- archivos afectados
- funciones
- flujo
- configuración
- almacenamiento
- seguridad
- tests
- riesgos

No modifiques código.

El Plan Agent utiliza principalmente herramientas de lectura para investigar el proyecto antes de proponer una implementación.

Plan no es solo “pedirle que no edite”.

El modo Plan dispone de restricciones específicas para proteger los archivos del proyecto durante la fase de planificación.

Plan → Agent

Convertir un plan aprobado en implementación

1

Describe el objetivo

Utiliza Plan.

2

Responde preguntas

Aclara requisitos ambiguos.

3

Revisa el plan

Corrige alcance y riesgos.

4

Start Implementation

Pasa el contexto al agente.

5

Implementa

Agent Mode ejecuta el trabajo.

Primer ejemplo

Cómo pedir una tarea completa a Agent Mode

Corrige el error
que permite registrar
usuarios duplicados.

Comportamiento esperado:

el email debe ser único.

Proceso:

1. reproduce el bug
2. identifica la causa raíz
3. localiza archivos afectados
4. crea un test de regresión
5. aplica el cambio mínimo
6. ejecuta tests
7. revisa el diff

Restricciones:

- no cambies APIs públicas
- no refactorices código no relacionado
- conserva compatibilidad
- no elimines datos existentes

Al terminar
resume:

- causa raíz
- archivos cambiados
- tests ejecutados
- riesgos restantes.
Tools

Las herramientas convierten al modelo en un agente

Idea clave

Un modelo sin herramientas solo puede generar texto. Un agente puede utilizar herramientas para leer, buscar, editar, ejecutar y consultar servicios externos.

Agent Mode puede disponer de tres grandes tipos de tools:

Built-in

VS Code tools

Archivos, búsqueda, terminal y editor.

MCP

MCP tools

Herramientas conectadas mediante MCP.

Extensions

Extension tools

Capacidades proporcionadas por extensiones.

Ejemplo real

Cómo un agente puede corregir un test fallido

Prompt
   ↓
Search code
   ↓
Read files
   ↓
Identify bug
   ↓
Edit file
   ↓
Run tests
   ↓
Test fails
   ↓
Read error
   ↓
Edit again
   ↓
Run tests
   ↓
Pass
   ↓
Review diff

Esta repetición de razonamiento, ejecución y observación es lo que se conoce como agent loop.

Tool selection

No habilites herramientas innecesarias

El agente selecciona automáticamente entre las tools disponibles, pero puedes restringirlas.

READ

Lectura de código.

EDIT

Edición de archivos.

TERM

Terminal.

WEB

Acceso web.

MCP

Servidores externos.

EXT

Tools de extensiones.

Menos tools puede significar mejores decisiones.

Un conjunto reducido de herramientas relevantes disminuye acciones innecesarias y también reduce el contexto generado por tool calls.

Publicidad
Permisos

Controlar cuánto puede hacer Agent Mode sin preguntar

VS Code separa las aprobaciones de las restricciones técnicas del sandbox.

Nivel Comportamiento
Manual permissions Las acciones no aprobadas requieren confirmación
Assisted permissions Un modelo evalúa tool calls y deriva algunas a revisión
Allow all Ejecuta tools sin solicitar confirmación
Assisted permissions puede estar en preview.

La disponibilidad depende de la versión y configuración de VS Code.

Autopilot

Autopilot no es simplemente “Allow all”

Allow all

Aprobaciones

Evita prompts de aprobación de tools.

Autopilot

Autonomía

Aprueba tools y además continúa trabajando hasta completar la tarea.

En el actual Agent Host, Autopilot es un agent mode, no simplemente un nivel de permisos.

Mayor autonomía significa menor supervisión intermedia.

Úsalo para tareas bien delimitadas y entornos donde entiendas los riesgos.

Sandbox

Permisos y sandbox son capas diferentes

Approval
    ↓
"¿Puede ejecutarse esta acción?"

Sandbox
    ↓
"¿Qué recursos puede alcanzar
esa acción?"

Un comando puede estar aprobado y aun así quedar limitado por reglas de filesystem o red.

El sandbox de terminal está disponible principalmente en macOS, Linux y WSL2.

Puede limitar lectura, escritura y acceso de red para comandos ejecutados por agentes.

Sensitive files

Pedir aprobación antes de editar archivos sensibles

VS Code permite configurar patrones que requieren revisión explícita.

"chat.tools.edits.autoApprove": {
  "**/*": true,
  "**/.vscode/*.json": false,
  "**/.env": false
}

Esto resulta útil para:

ENV

.env y secretos.

CFG

Configuración del editor.

CI

Workflows de CI/CD.

DEP

Archivos de deployment.

Contexto

El agente solo puede razonar con el contexto que recibe

PROMPT

Tu instrucción.

CODE

Archivos recuperados.

RULE

Instructions y AGENTS.md.

TOOL

Resultados de tools.

TERM

Output de terminal.

CHAT

Historial de sesión.

Un agente no “conoce mágicamente” todo el repositorio.

El harness selecciona y recupera contexto relevante a medida que la tarea avanza.

Instructions

Guía al agente con reglas persistentes

.github/copilot-instructions.md

.github/instructions/*.instructions.md

AGENTS.md

Puedes guardar reglas como:

- preserve backwards compatibility
- avoid unrelated refactors
- use existing project abstractions
- run tests before finishing
- never commit secrets
- review git diff before completion
Subagents

Delegar investigaciones sin contaminar el contexto principal

Subagent

Un Subagent es un agente independiente que recibe una subtarea concreta, trabaja con contexto aislado y devuelve una síntesis al agente principal.

Analiza este cambio.

Usa Subagents
para investigar
de forma independiente:

1. arquitectura
2. seguridad
3. tests

No modifiques archivos.

Después combina
los hallazgos
y elimina duplicados.
Cuándo usarlos

Tareas ideales para Subagents

Investigación

Buscar implementaciones relacionadas.

Security review

Revisar una superficie concreta.

Testing

Analizar cobertura faltante.

Docs

Investigar funcionamiento para documentarlo.

Comparación

Evaluar alternativas independientes.

Code review

Obtener una segunda perspectiva.

Nested Subagents

Los Subagents también pueden delegar trabajo

Por defecto, los Subagents no vuelven a lanzar otros Subagents. Puede habilitarse mediante:

chat.subagents.allowInvocationsFromSubagents
No habilites recursión sin necesidad.

Más niveles de agentes pueden aumentar consumo, complejidad y dificultad para entender quién hizo cada cambio.

Publicidad
Agent Sessions

Cada tarea puede vivir en una sesión independiente

Una sesión contiene:

CHAT

Conversación.

CTX

Contexto acumulado.

TOOL

Tool calls.

WORK

Workspace o worktree.

EDIT

Cambios realizados.

STATE

Estado de ejecución.

Las sesiones son independientes.

El contexto de una sesión no se mezcla automáticamente con otra.

Paralelismo

Ejecutar varias tareas de agente a la vez

VS CODE
│
├── Session A
│   └── Fix authentication
│
├── Session B
│   └── Add API tests
│
└── Session C
    └── Update documentation

Puedes cambiar entre sesiones mientras otras continúan trabajando.

Chats

Varios chats pueden compartir una misma sesión

En el Agent Host, una sesión puede contener varios chats.

Conversaciones separadas no significan archivos separados.

Los chats de una misma sesión comparten el mismo folder o worktree. Sus cambios aparecen juntos.

Worktrees

Usa Worktrees para aislar tareas paralelas

Mismo folder

Cambios compartidos

Los agentes pueden modificar los mismos archivos.

Worktree

Aislamiento

Cada tarea tiene sus propios archivos y branch.

Repository
│
├── Main worktree
│
├── Agent session A
│   └── Worktree A
│
└── Agent session B
    └── Worktree B
Worktrees aíslan archivos, no servicios externos.

Dos agentes aún podrían utilizar la misma base de datos, puerto, API o recurso externo.

Importante

Las sesiones Worktree tienen un modelo de permisos distinto

En sesiones Copilot Agent Host, una sesión con aislamiento mediante Worktree puede utilizar Allow all como nivel fijo de permisos dentro del worktree.

El aislamiento del Worktree es parte de la barrera.

Aunque el agente tenga autonomía sobre ese checkout, sus archivos permanecen separados del workspace principal hasta que tú decidas integrar el resultado.

Checkpoints

Volver atrás cuando el agente toma una mala dirección

Restore Checkpoint

Antes de procesar determinadas solicitudes, VS Code puede crear snapshots de los archivos afectados. Esto permite restaurar el workspace a un punto anterior.

1

Detecta el desvío

El agente toma un enfoque incorrecto.

2

Busca el prompt anterior

Localiza el punto correcto.

3

Restore Checkpoint

Restaura cambios y conversación.

4

Corrige el prompt

Añade la restricción faltante.

Limitación

Checkpoint no reemplaza Git

Restaurar un checkpoint puede revertir archivos y conversación, pero no necesariamente:

CMD

Comandos ya ejecutados.

NET

Requests externas.

DB

Cambios en servicios o bases externas.

DEP

Deployments realizados.

Sigue usando Git.

Los checkpoints son una ayuda de sesión, no un sustituto del control de versiones.

Recovery

Editar un prompt anterior también puede rehacer el trabajo

Si una instrucción inicial era incorrecta, puedes editar la petición anterior.

Original:

Refactoriza el módulo de usuarios.

Mejor:

Corrige únicamente
la duplicación
en UserRepository.

No cambies
la API pública
ni otros módulos.

VS Code puede revertir los cambios posteriores a ese prompt y volver a procesar la nueva instrucción.

Steering

Corregir al agente mientras todavía está trabajando

No siempre debes esperar a que termine. Si detectas una dirección incorrecta, puedes:

MSG

Enviar nueva instrucción.

STOP

Detener la ejecución.

ASK

Solicitar análisis antes de continuar.

Stop changing
the database layer.

The bug is limited
to the API response mapping.

Keep the public contract unchanged
and inspect only
the response transformer.
Agent recovery

Cuando el agente repite el mismo error

Do not rerun
the same failing command.

Summarize:

1. the error
2. the assumption
   the error disproves
3. two different
   recovery options

Do not edit files
or execute commands
until you explain
the alternatives.
Obliga al agente a cambiar de estrategia.

Esto suele ser más efectivo que permitirle repetir el mismo intento varias veces.

Publicidad
Code Review

Revisa todos los cambios antes de integrarlos

En sesiones actuales del Agent Host, el agente puede guardar cambios directamente en el folder o worktree de la sesión.

1

Changed files

Abre cada archivo modificado.

2

Diff

Revisa cada cambio.

3

Feedback

Comenta líneas concretas.

4

Tests

Verifica comportamiento real.

5

Integrate

Commit, merge o apply.

Feedback

Puedes comentar directamente sobre el diff

Feedback:

This changes
the public response format.

Keep the existing API contract.

Only fix
the duplicate-user check
inside the validation layer.

El agente puede utilizar estos comentarios como instrucciones para una nueva iteración.

Verification

Un Agent Mode sin tests sigue siendo solo una hipótesis

Before finishing:

1. run the specific regression test
2. run related tests
3. run lint
4. run typecheck if available
5. run build if available
6. inspect git diff
7. report anything
   you could not verify
Self-correction

Agent Mode puede utilizar errores como feedback

Edit
 ↓
Test
 ↓
Failure
 ↓
Read error
 ↓
Update hypothesis
 ↓
Edit
 ↓
Test
 ↓
Pass

Esta capacidad es una de las mayores diferencias entre Agent Mode y simplemente pedirle a una IA un bloque de código.

Skills

Enseña procedimientos reutilizables al agente

.github/
└── skills/
    └── security-review/
        ├── SKILL.md
        └── scripts/

Una Skill puede definir:

PROC

Procedimiento.

CMD

Comandos.

RULE

Reglas.

RES

Recursos.

MCP

Extender Agent Mode con herramientas externas

Model Context Protocol puede añadir herramientas al agente.

GitHub

Issues y Pull Requests.

Databases

Datos externos.

Docs

Documentación técnica.

Browser

Web y testing.

CI/CD

Pipelines.

Services

Herramientas internas.

Hooks

Controlar el ciclo del agente con automatizaciones

Los Agent Hooks pueden ejecutarse en momentos específicos del workflow.

START

SessionStart.

PROMPT

UserPromptSubmit.

PRE

PreToolUse.

POST

PostToolUse.

SUB

SubagentStart / Stop.

STOP

Fin de sesión.

Ejemplo

Un hook PreToolUse podría bloquear determinados comandos peligrosos, mientras PostToolUse podría ejecutar un formatter después de una edición.

Hooks puede incluir funciones en preview.

No construyas procesos críticos sin revisar antes el estado actual de la función.

Publicidad
Custom Agents

Crear variantes especializadas de Agent Mode

.github/
└── agents/
    ├── planner.agent.md
    ├── security.agent.md
    └── tester.agent.md

Cada Custom Agent puede tener:

ROLE

Rol.

MODEL

Modelo.

TOOLS

Tools permitidas.

RULE

Instrucciones.

MCP

MCP.

HOOK

Hooks.

Least privilege

Un agente de review no necesita permiso para editar

---
description: Security reviewer
tools:
  - search
  - read
---

Review the current changes.

Do not edit files.

Report:

- severity
- file
- line
- exploit scenario
- recommended fix
El rol debería definir la frontera de tools.

Si un agente solo investiga, no necesita capacidades de escritura.

Local vs Cloud

Cuándo dejar Agent Mode y utilizar Cloud Agent

Agent Mode local Cloud Agent
Necesitas contexto local La tarea vive completamente en GitHub
Quieres interactuar Quieres delegar
Necesitas terminal local No necesitas herramientas locales
Iteración rápida Trabajo background
Resultado en workspace Resultado en Pull Request
Selección de tareas

Qué tareas funcionan mejor con Agent Mode

Bugfixes

Con síntoma reproducible y resultado esperado.

Features pequeñas

Alcance bien delimitado.

Tests

Cobertura de workflows existentes.

Refactors

Con comportamiento protegido por tests.

Migraciones

Cuando existe plan claro de verificación.

Documentación

Basada en código real.

Malas tareas

Qué no deberías delegar sin más contexto

Prompt débil Problema
Arregla todo el proyecto Alcance indefinido
Mejora la arquitectura No define objetivo observable
Hazlo más seguro No define superficie ni amenaza
Optimiza todo No existe métrica ni evidencia
Reescribe el plugin Demasiado riesgo y scope
Prompting

Qué debería contener una buena tarea para Agent Mode

OBJ

Objetivo.

CTX

Contexto.

NOW

Comportamiento actual.

EXP

Comportamiento esperado.

SCP

Alcance.

RULE

Restricciones.

ACC

Criterios de aceptación.

TEST

Verificación.

Prompt maestro

Plantilla profesional para Copilot Agent Mode

# Objective

[RESULT]


# Context

[WHY]


# Current behavior

[CURRENT]


# Expected behavior

[EXPECTED]


# Scope

You may modify:

[FILES / MODULES]


Do not modify:

[OUT OF SCOPE]


# Constraints

- preserve public APIs
- follow existing architecture
- avoid unrelated refactors
- avoid unnecessary dependencies
- preserve backwards compatibility
- do not weaken security


# Before editing

1. inspect the current implementation
2. identify the relevant code path
3. find similar patterns
4. identify risks
5. explain your plan


# Implementation

Apply the smallest
safe change
that satisfies
the requirements.


# Verification

Run:

- relevant tests
- lint
- typecheck
- build

when available.


# Review

Before finishing:

1. inspect git diff
2. check for regressions
3. review security
4. remove debug code
5. confirm no unrelated files changed


# Final response

Report:

- root cause
- implementation
- files changed
- tests executed
- results
- remaining risks
WordPress

Ejemplo de Agent Mode para un plugin WordPress

Objetivo:

corregir un endpoint REST
que permite modificar
un registro
sin comprobar ownership.


Antes de editar:

1. localiza register_rest_route
2. analiza permission_callback
3. sigue el recurso
4. identifica cómo se obtiene
   el usuario actual
5. busca endpoints similares


Restricciones:

- no cambiar la URL
- no cambiar el response format
- no modificar tablas
- mantener compatibilidad


Implementa:

- autorización correcta
- test de regresión


Verifica:

- usuario propietario
- usuario distinto
- usuario no autenticado
- administrador

Después revisa:

- capabilities
- nonce si corresponde
- sanitización
- escaping
- SQL
- git diff
Buenas prácticas

Cómo obtener mejores resultados con Agent Mode

01

Empieza con tareas acotadas.

02

Usa Plan cuando el enfoque no está claro.

03

Commit o stash de trabajo no relacionado.

04

Da criterios de aceptación.

05

Limita tools innecesarias.

06

Empieza con permisos manuales.

07

Usa Worktrees para tareas paralelas.

08

Exige tests y verificación.

09

Revisa cada archivo modificado.

10

Mantén Git como historial definitivo.

Decisión rápida

Qué modo usar según la tarea

Pregunta Quiero entender código
Ask
Diseño Quiero aprobar el enfoque primero
Plan
Implementación Quiero que edite y ejecute
Agent
Autonomía Quiero que continúe sin detenerse
Autopilot
Paralelo Quiero aislar implementaciones
Worktrees
Delegación Quiero que trabaje remotamente
Cloud Agent
Fuentes oficiales

Documentación de Agent Mode

Publicidad
Publicidad
Preguntas frecuentes

FAQ sobre GitHub Copilot Agent Mode

Agent Mode es un modo de GitHub Copilot diseñado para ejecutar tareas de programación de varios pasos. Puede buscar, leer, editar, ejecutar tools y verificar resultados de manera iterativa.

Ask está orientado principalmente a responder preguntas y explicar código. Agent Mode puede utilizar herramientas para modificar el proyecto y ejecutar una tarea.

Plan investiga y prepara una estrategia de implementación sin realizar cambios normales sobre los archivos del proyecto. Agent Mode ejecuta la implementación.

Sí. Agent Mode puede utilizar herramientas de terminal para ejecutar tests, lint, build, Git y otros comandos, sujeto a permisos y políticas.

Sí. El agente puede interpretar errores producidos por tests, build, linters u otras tools, modificar su hipótesis y continuar iterando.

Son capacidades que permiten al agente realizar acciones, por ejemplo leer archivos, buscar código, editar, ejecutar terminal o conectarse a servicios mediante MCP.

VS Code ofrece niveles como Manual permissions y Allow all, además de opciones como Assisted permissions en entornos compatibles. También dispone de controles específicos para terminal, URLs y tools.

Autopilot es un modo de agente que autoaprueba las tools y permite que el agente continúe trabajando automáticamente hasta considerar la tarea terminada.

Sí. Los Subagents permiten delegar subtareas en contextos independientes y devolver sus resultados al agente principal.

Sí. En los flujos de sesiones de VS Code pueden utilizarse Worktrees para aislar cambios de distintas tareas y agentes.

Los checkpoints permiten regresar a un estado anterior de los archivos afectados y de la conversación cuando una ejecución toma una dirección incorrecta. No reemplazan Git.

Sí. Los servidores MCP pueden proporcionar herramientas adicionales al agente para acceder a documentación, servicios, bases de datos y otras aplicaciones.

Sí. Las Agent Skills permiten almacenar procedimientos, instrucciones, scripts y recursos para tareas especializadas.

Agent Mode normalmente trabaja sobre un entorno local o una sesión administrada desde VS Code. Cloud Agent ejecuta la tarea remotamente sobre GitHub y prepara cambios mediante una rama y Pull Request.

Sí. Puede trabajar sobre plugins y themes, analizar PHP, MySQL, AJAX, REST API, WooCommerce, JavaScript y ejecutar las herramientas de verificación disponibles en el proyecto.

Publicidad
Siguiente guía

GitHub Copilot Cloud Agent: cómo delegar tareas y recibir Pull Requests

Agent Mode es ideal cuando quieres trabajar de forma interactiva. El siguiente paso es aprender a delegar tareas completas para que Copilot trabaje remotamente sobre GitHub, cree una rama, ejecute verificaciones y prepare un Pull Request para revisión.

Aprender Copilot Cloud Agent →
Carrito de compra
Scroll al inicio