{"meta":{"title":"Compatibilidad del SDK y la CLI","intro":"Este documento describe qué funciones de Copilot CLI están disponibles a través del SDK y cuáles son exclusivas de la CLI.","product":"GitHub Copilot","breadcrumbs":[{"href":"/es/copilot","title":"GitHub Copilot"},{"href":"/es/copilot/how-tos","title":"Procedimientos"},{"href":"/es/copilot/how-tos/copilot-sdk","title":"SDK de Copilot"},{"href":"/es/copilot/how-tos/copilot-sdk/troubleshooting","title":"Solución de problemas"},{"href":"/es/copilot/how-tos/copilot-sdk/troubleshooting/compatibility","title":"Compatibility"}],"documentType":"article"},"body":"# Compatibilidad del SDK y la CLI\n\nEste documento describe qué funciones de Copilot CLI están disponibles a través del SDK y cuáles son exclusivas de la CLI.\n\n<!-- markdownlint-disable GHD046 GHD005 -->\n\n<!-- Suppressed: GHD046 (outdated release terminology), GHD005 (hardcoded data variable) -->\n\n## Visión general\n\nEl SDK de Copilot se comunica con la CLI a través del protocolo JSON-RPC. Las características deben exponerse explícitamente a través de este protocolo para que estén disponibles en el SDK. Muchas características interactivas de la CLI son específicas del terminal y no están disponibles mediante programación.\n\n## Comparación de características\n\n### ✅ Disponible en el SDK\n\n| Feature                                      | Método SDK                                             | Notas                                                                                                        |\n| -------------------------------------------- | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ |\n| **Gestión de sesiones**                      |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Crear sesión                                 | `createSession()`                                      | Soporte completo de configuración                                                                            |\n| Reanudar sesión                              | `resumeSession()`                                      | Con áreas de trabajo de sesión infinitas                                                                     |\n| Desconectar sesión                           | `disconnect()`                                         | Liberar recursos en memoria                                                                                  |\n| Destruir sesión *(en desuso)*                | `destroy()`                                            | Use `disconnect()` en su lugar                                                                               |\n| Eliminar sesión                              | `deleteSession()`                                      | Quitar del almacenamiento                                                                                    |\n| Enumerar las sesiones                        | `listSessions()`                                       | Todas las sesiones almacenadas                                                                               |\n| Obtención de la última sesión                | `getLastSessionId()`                                   | Para un currículum rápido                                                                                    |\n| Obtener sesión en primer plano               | `getForegroundSessionId()`                             | Coordinación de varias sesiones                                                                              |\n| Establecer sesión en primer plano            | `setForegroundSessionId()`                             | Coordinación de varias sesiones                                                                              |\n| **Messaging**                                |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Enviar mensaje                               | `send()`                                               | Con datos adjuntos                                                                                           |\n| Enviar y esperar                             | `sendAndWait()`                                        | Bloques hasta completarse                                                                                    |\n| Dirección (modo inmediato)                   | `send({ mode: \"immediate\" })`                          | Inyectar a mitad de giro sin abortar                                                                         |\n| Puesta en cola (modo de puesta en cola)      | `send({ mode: \"enqueue\" })`                            | Búfer para el procesamiento secuencial (valor predeterminado)                                                |\n| Archivos adjuntos                            | `send({ attachments: [{ type: \"file\", path }] })`      | Imágenes codificadas automáticamente y cambiadas de tamaño                                                   |\n| Datos adjuntos de directorio                 | `send({ attachments: [{ type: \"directory\", path }] })` | Adjuntar contexto de directorio                                                                              |\n| Obtener historial                            | `getEvents()`                                          | Todos los eventos de sesión                                                                                  |\n| Abort                                        | `abort()`                                              | Cancelar solicitud en curso                                                                                  |\n| **Herramientas**                             |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Registro de herramientas personalizadas      | `registerTools()`                                      | Compatibilidad completa con el esquema JSON                                                                  |\n| Control de permisos de herramientas          | `onPreToolUse` enlace                                  | Permitir/denegar/preguntar                                                                                   |\n| Modificación del resultado de la herramienta | `onPostToolUse` enlace                                 | Transformación de los resultados                                                                             |\n| Herramientas disponibles o excluidas         | `availableTools`, `excludedTools` configuración        | Herramientas de filtro                                                                                       |\n| **Modelos**                                  |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Enumeración de modelos                       | `listModels()`                                         | Con funcionalidades, facturación y políticas                                                                 |\n| Establecer modelo (en la creación)           |                                                        |                                                                                                              |\n| `model` en la configuración de sesión        | Por sesión                                             |                                                                                                              |\n| Modelo de conmutador (mediados de sesión)    | `session.setModel()`                                   | También a través de `session.rpc.model.switchTo()`                                                           |\n| Obtención del modelo actual                  | `session.rpc.model.getCurrent()`                       | Consulta del modelo activo                                                                                   |\n| Esfuerzo de razonamiento                     |                                                        |                                                                                                              |\n| `reasoningEffort` configuración              | Para los modelos admitidos                             |                                                                                                              |\n| **Modo de agente**                           |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Obtener el modo actual                       | `session.rpc.mode.get()`                               | Devuelve el modo actual.                                                                                     |\n| Establecer modo                              | `session.rpc.mode.set()`                               | Cambiar entre modos                                                                                          |\n| **Administración de planes**                 |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Leer plan                                    | `session.rpc.plan.read()`                              | Obtén el contenido y la ruta de acceso de plan.md                                                            |\n| Actualizar plan                              | `session.rpc.plan.update()`                            | Escribir el contenido del archivo plan.md                                                                    |\n| Eliminar el plan                             | `session.rpc.plan.delete()`                            | Eliminar plan.md                                                                                             |\n| **Archivos del área de trabajo**.            |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Enumerar archivos del área de trabajo        | `session.rpc.workspace.listFiles()`                    | Archivos en el área de trabajo de sesión                                                                     |\n| Leer el archivo del área de trabajo          | `session.rpc.workspace.readFile()`                     | Leer el contenido de archivos                                                                                |\n| Crear archivo de área de trabajo             | `session.rpc.workspace.createFile()`                   | Creación de un archivo en el área de trabajo                                                                 |\n| **Autenticación**                            |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Obtención del estado de autenticación        | `getAuthStatus()`                                      | Comprobación del estado de inicio de sesión                                                                  |\n| Uso del token                                |                                                        |                                                                                                              |\n| Opción `gitHubToken`                         | Autenticación mediante programación                    |                                                                                                              |\n| **Conectividad**                             |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Ping                                         | `client.ping()`                                        | Verificación de salud con marca de tiempo del servidor                                                       |\n| Obtención del estado del servidor            | `client.getStatus()`                                   | Información del servidor y la versión del protocolo                                                          |\n| **Servidores MCP**                           |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Servidores locales/stdio                     |                                                        |                                                                                                              |\n| `mcpServers` configuración                   | Generar procesos                                       |                                                                                                              |\n| HTTP/SSE remoto                              |                                                        |                                                                                                              |\n| `mcpServers` configuración                   | Conexión a los servicios                               |                                                                                                              |\n| **Hooks**                                    |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Uso previo a la herramienta                  | `onPreToolUse`                                         | Permisos para modificar argumentos                                                                           |\n| Uso posterior de la herramienta (éxito)      | `onPostToolUse`                                        | Modificación de los resultados                                                                               |\n| Uso posterior a la herramienta (error)       | `onPostToolUseFailure`                                 | Observar las llamadas a herramientas con errores, insertar instrucciones de reintento                        |\n| Indicador de usuario                         | `onUserPromptSubmitted`                                | Modificación de avisos                                                                                       |\n| Inicio y finalización de la sesión           |                                                        |                                                                                                              |\n| `onSessionStart`, `onSessionEnd`             | Ciclo de vida con origen o motivo                      |                                                                                                              |\n| Gestión de errores                           | `onErrorOccurred`                                      | Control personalizado                                                                                        |\n| **Eventos**                                  |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Todos los eventos de sesión                  |                                                        |                                                                                                              |\n| `on()`, `once()`                             | Más de 40 tipos de eventos                             |                                                                                                              |\n| Streaming                                    | `streaming: true`                                      | Eventos delta                                                                                                |\n| **Configuración de sesión**                  |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Agentes personalizados                       |                                                        |                                                                                                              |\n| `customAgents` configuración                 | Definición de agentes especializados                   |                                                                                                              |\n| Mensaje del sistema                          |                                                        |                                                                                                              |\n| `systemMessage` configuración                | Anexar o reemplazar                                    |                                                                                                              |\n| Proveedor personalizado                      |                                                        |                                                                                                              |\n| `provider` configuración                     | Compatibilidad con BYOK                                |                                                                                                              |\n| Sesiones infinitas                           |                                                        |                                                                                                              |\n| `infiniteSessions` configuración             | Compactación automática                                |                                                                                                              |\n| Controlador de permisos                      | `onPermissionRequest`                                  | Aprobar o denegar solicitudes                                                                                |\n| Controlador de entrada de usuario            | `onUserInputRequest`                                   | Gestionar ask\\_user                                                                                          |\n| Habilidades                                  |                                                        |                                                                                                              |\n| `skillDirectories` configuración             | Aptitudes personalizadas                               |                                                                                                              |\n| Aptitudes deshabilitadas                     |                                                        |                                                                                                              |\n| `disabledSkills` configuración               | Deshabilitar habilidades específicas                   |                                                                                                              |\n| Directorio de configuración                  |                                                        |                                                                                                              |\n| `configDir` configuración                    | Invalidar la ubicación de configuración predeterminada |                                                                                                              |\n| Nombre de cliente                            |                                                        |                                                                                                              |\n| `clientName` configuración                   | Identificación de la aplicación en User-Agent          |                                                                                                              |\n| Directorio de trabajo                        |                                                        |                                                                                                              |\n| `workingDirectory` configuración             | Establecer el cwd de la sesión                         |                                                                                                              |\n| **Experimental**                             |                                                        |                                                                                                              |\n|                                              |                                                        |                                                                                                              |\n| Administración de agentes                    | `session.rpc.agent.*`                                  | Lista, seleccionar, deseleccionar, obtener agente actual                                                     |\n| Modo flota                                   | `session.rpc.fleet.start()`                            | Ejecución paralela del subagente; consulte [Modo flota](/es/copilot/how-tos/copilot-sdk/features/fleet-mode) |\n| Compactación manual                          | `session.rpc.history.compact()`                        | Active la compactación bajo demanda                                                                          |\n| Truncamiento del historial                   | `session.rpc.history.truncate()`                       | Eliminar eventos a partir de un punto                                                                        |\n| Duplicación de sesión                        | `server.rpc.sessions.fork()`                           | Bifurcar una sesión en un momento del historial                                                              |\n\n### ❌ No disponible en el SDK (solo la CLI)\n\n| Feature                                         | Comando o opción de la CLI                          | Reason                                                                |\n| ----------------------------------------------- | --------------------------------------------------- | --------------------------------------------------------------------- |\n| **Exportación de sesión**                       |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Exportar a archivo                              |                                                     |                                                                       |\n| `--share`, `/share`                             | No en el protocolo                                  |                                                                       |\n| Exportar a gist de GitHub                       |                                                     |                                                                       |\n| `--share-gist`, `/share gist`                   | No en el protocolo                                  |                                                                       |\n| **Interfaz de usuario interactiva**             |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Comandos de barra diagonal                      |                                                     |                                                                       |\n| `/help`, `/clear`, `/exit`, etc.                | Solo TUI                                            |                                                                       |\n| Cuadro de diálogo selector de agente            | `/agent`                                            | Interfaz de usuario interactiva                                       |\n| Cuadro de diálogo de modo diff                  | `/diff`                                             | Interfaz de usuario interactiva                                       |\n| Cuadro de diálogo de comentarios                | `/feedback`                                         | Interfaz de usuario interactiva                                       |\n| Selector de temas                               | `/theme`                                            | Interfaz de usuario del terminal                                      |\n| Selector de modelos                             | `/model`                                            | Interfaz de usuario interactiva (use el SDK `setModel()` en su lugar) |\n| Copiar al Portapapeles                          | `/copy`                                             | Específico del terminal                                               |\n| Administración de contexto                      | `/context`                                          | Interfaz de usuario interactiva                                       |\n| **Investigación e historia**                    |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Investigación profunda                          | `/research`                                         | Flujo de trabajo de TUI con búsqueda web                              |\n| Herramientas de historial de sesiones           | `/chronicle`                                        | Standup, consejos, mejorar, reindexar                                 |\n| **Características del terminal**                |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Salida de color                                 | `--no-color`                                        | Específico del terminal                                               |\n| Modo de lector de pantalla                      | `--screen-reader`                                   | Accessibility                                                         |\n| Representación de diferencias enriquecidas      | `--plain-diff`                                      | Representación del terminal                                           |\n| Banner de inicio                                | `--banner`                                          | Elemento Visual                                                       |\n| Modo de transmisión                             | `/streamer-mode`                                    | Modo de presentación de TUI                                           |\n| Búfer de pantalla alternativo                   |                                                     |                                                                       |\n| `--alt-screen`, `--no-alt-screen`               | Representación del terminal                         |                                                                       |\n| Compatibilidad con el mouse                     |                                                     |                                                                       |\n| `--mouse`, `--no-mouse`                         | Entrada del terminal                                |                                                                       |\n| **Accesos directos de rutas y permisos**        |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Permitir todas las rutas de acceso              | `--allow-all-paths`                                 | Uso del controlador de permisos                                       |\n| Permitir todas las direcciones URL              | `--allow-all-urls`                                  | Uso del controlador de permisos                                       |\n| Permitir todos los permisos                     |                                                     |                                                                       |\n| `--yolo`, , `--allow-all`, `/allow-all`         | Uso del controlador de permisos                     |                                                                       |\n| Permisos de herramientas granulares             |                                                     |                                                                       |\n| `--allow-tool`, `--deny-tool`                   | Uso del `onPreToolUse` gancho                       |                                                                       |\n| Control de acceso URL                           |                                                     |                                                                       |\n| `--allow-url`, `--deny-url`                     | Uso del controlador de permisos                     |                                                                       |\n| Restablecimiento de las herramientas permitidas | `/reset-allowed-tools`                              | Comando TUI                                                           |\n| **Administración de directorios**               |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Agregar directorio                              |                                                     |                                                                       |\n| `/add-dir`, `--add-dir`                         | Configurar durante la sesión                        |                                                                       |\n| Enumerar directorios                            | `/list-dirs`                                        | Comando TUI                                                           |\n| Cambio de directorio                            | `/cwd`                                              | Comando TUI                                                           |\n| **Plugin/MCP Management**                       |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Comandos de complementos                        | `/plugin`                                           | Administración interactiva                                            |\n| Administración del servidor MCP                 | `/mcp`                                              | Interfaz de usuario interactiva                                       |\n| **Administración de cuentas**                   |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Flujo de inicio de sesión                       |                                                     |                                                                       |\n| `/login`, `copilot auth login`                  | Flujo de dispositivo OAuth                          |                                                                       |\n| Cerrar sesión                                   |                                                     |                                                                       |\n| `/logout`, `copilot auth logout`                | CLI directo                                         |                                                                       |\n| Información del usuario                         | `/user`                                             | Comando TUI                                                           |\n| **Operaciones de sesión**                       |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Borrar conversación                             | `/clear`                                            | Solo TUI                                                              |\n| Vista en planta                                 | `/plan`                                             | Solo TUI (use el SDK `session.rpc.plan.*` en su lugar)                |\n| Administración de sesiones                      |                                                     |                                                                       |\n| `/session`, , `/resume`, `/rename`              | Flujo de trabajo de TUI                             |                                                                       |\n| Modo de flota (interactivo)                     | `/fleet`                                            | Solo TUI (use el SDK `session.rpc.fleet.start()` en su lugar)         |\n| **Administración de aptitudes**                 |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Administrar habilidades                         | `/skills`                                           | Interfaz de usuario interactiva                                       |\n| **Administración de tareas**                    |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Ver tareas en segundo plano                     | `/tasks`                                            | Comando TUI                                                           |\n| **Uso y estadísticas**                          |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Uso de tokens                                   | `/usage`                                            | Suscribirse a eventos de uso                                          |\n| **Revisión del código**                         |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Revisión de los cambios                         | `/review`                                           | Comando TUI                                                           |\n| **Delegación**                                  |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Delegado a Relaciones Públicas                  | `/delegate`                                         | Flujo de trabajo de TUI                                               |\n| **Configuración del terminal**                  |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Integración de Shell                            | `/terminal-setup`                                   | Específico del shell                                                  |\n| **Desarrollo**                                  |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Alternar el modo experimental                   |                                                     |                                                                       |\n| `/experimental`, `--experimental`               | Bandera en tiempo de ejecución                      |                                                                       |\n| Control de instrucciones personalizadas         | `--no-custom-instructions`                          | Marca de la CLI                                                       |\n| Diagnóstico de la sesión                        | `/diagnose`                                         | Comando TUI                                                           |\n| Ver o administrar instrucciones                 | `/instructions`                                     | Comando TUI                                                           |\n| Recopilación de registros de depuración         | `/collect-debug-logs`                               | Herramienta de diagnóstico                                            |\n| Volver a indexar el área de trabajo             | `/reindex`                                          | Comando TUI                                                           |\n| Integración del IDE                             | `/ide`                                              | Flujo de trabajo específico del IDE                                   |\n| **Modo no interactivo**                         |                                                     |                                                                       |\n|                                                 |                                                     |                                                                       |\n| Modo de aviso                                   |                                                     |                                                                       |\n| `-p`, `--prompt`                                | Ejecución de un solo intento                        |                                                                       |\n| Aviso interactivo                               |                                                     |                                                                       |\n| `-i`, `--interactive`                           | Ejecución automática y, a continuación, interactiva |                                                                       |\n| Salida silenciosa                               |                                                     |                                                                       |\n| `-s`, `--silent`                                | Compatible con scripts                              |                                                                       |\n| Continuar sesión                                | `--continue`                                        | Continuar desde el último punto más reciente                          |\n| Selección del agente                            | `--agent <agent>`                                   | Marca de la CLI                                                       |\n\n## Soluciones alternativas\n\n### Modo flota\n\nEl modo de flota está disponible a través de `session.rpc.fleet.start()` para aplicaciones del SDK que quieran que el entorno de ejecución despliegue subagentes paralelos para un objetivo más amplio. Úselo cuando las subtareas independientes se pueden ejecutar simultáneamente y, a continuación, se resumen mediante la sesión principal. Para obtener una guía completa, consulte [Modo flota](/es/copilot/how-tos/copilot-sdk/features/fleet-mode).\n\n### Exportación de sesión\n\nLa `--share` opción no está disponible a través del SDK. Soluciones alternativas:\n\n1. **Recopilar eventos manualmente** : suscríbase a eventos de sesión y cree su propia exportación:\n\n   ```typescript\n   const events: SessionEvent[] = [];\n   session.on((event) => events.push(event));\n   // ... after conversation ...\n   const messages = await session.getEvents();\n   // Format as markdown yourself\n   ```\n\n2. **Use la CLI directamente para la exportación** : ejecute la CLI con `--share` para las exportaciones puntuales.\n\n### Control de permisos\n\nEl SDK usa un modelo de permisos **de denegación por defecto** . Se deniegan todas las solicitudes de permiso (escrituras de archivos, comandos de shell, capturas de direcciones URL, etc.), a menos que la aplicación proporcione un `onPermissionRequest` controlador.\n\nEn lugar de `--allow-all-paths` o `--yolo`, use el manejador de permisos.\n\n```typescript\nconst session = await client.createSession({\n  onPermissionRequest: approveAll,\n});\n```\n\n### Seguimiento del uso de tokens\n\nEn lugar de suscribirse a eventos de uso `/usage`,\n\n```typescript\nsession.on(\"assistant.usage\", (event) => {\n  console.log(\"Tokens used:\", {\n    input: event.data.inputTokens,\n    output: event.data.outputTokens,\n  });\n});\n```\n\n### Compactación de contexto\n\nEn lugar de `/compact`, configure la compactación automática o desencadene manualmente:\n\n```typescript\n// Automatic compaction via config\nconst session = await client.createSession({\n  infiniteSessions: {\n    enabled: true,\n    backgroundCompactionThreshold: 0.80,  // Start background compaction at 80% context utilization\n    bufferExhaustionThreshold: 0.95,      // Block and compact at 95% context utilization\n  },\n});\n\n// Manual compaction (experimental)\nconst result = await session.rpc.history.compact();\nconsole.log(`Removed ${result.tokensRemoved} tokens, ${result.messagesRemoved} messages`);\n```\n\n> \\[!NOTE]\n> Los umbrales son relaciones de uso de contexto (0,0-1,0), no recuentos absolutos de tokens.\n\n### Administración de planes\n\nLeer y escribir planes de sesión mediante programación:\n\n```typescript\n// Read the current plan\nconst plan = await session.rpc.plan.read();\nif (plan.exists) {\n  console.log(plan.content);\n}\n\n// Update the plan\nawait session.rpc.plan.update({ content: \"# My Plan\\n- Step 1\\n- Step 2\" });\n\n// Delete the plan\nawait session.rpc.plan.delete();\n```\n\n### Encaminamiento de mensajes\n\nInserte un mensaje en el turno LLM actual sin interrumpir:\n\n```typescript\n// Steer the agent mid-turn\nawait session.send({ prompt: \"Focus on error handling first\", mode: \"immediate\" });\n\n// Default: enqueue for next turn\nawait session.send({ prompt: \"Next, add tests\" });\n```\n\n## Limitaciones del protocolo\n\nEl SDK solo puede acceder a las características expuestas a través del protocolo JSON-RPC de la CLI. Si necesita una característica de la CLI que no esté disponible:\n\n1. **Buscar alternativas** : muchas características tienen equivalentes del SDK (consulte las soluciones anteriores)\n2. **Uso directo de la CLI** : para las operaciones puntuales, invoque la CLI.\n3. **Solicita esta función** - Abre una incidencia para solicitar compatibilidad con un protocolo\n\n## Compatibilidad de versiones\n\n| Intervalo de protocolos del SDK | Versión del protocolo de la CLI | Compatibility                             |\n| ------------------------------- | ------------------------------- | ----------------------------------------- |\n| v2-v3                           | v3                              | Soporte completo                          |\n| v2-v3                           | v2                              | Compatible con adaptadores v2 automáticos |\n\nEl SDK negocia las versiones de protocolo con la CLI al iniciarse. El SDK admite las versiones de protocolo de 2 a 3. Al conectarse a un servidor de CLI v2, el SDK adapta automáticamente los mensajes entre `tool.call` y `permission.request` al modelo de eventos v3, sin necesidad de realizar cambios en el código.\n\nCompruebe las versiones en tiempo de ejecución:\n\n```typescript\nconst status = await client.getStatus();\nconsole.log(\"Protocol version:\", status.protocolVersion);\n```\n\n## Consulte también\n\n* [Crea tu primera aplicación con tecnología Copilot](/es/copilot/how-tos/copilot-sdk/getting-started)\n* [Enlaces de sesión](/es/copilot/how-tos/copilot-sdk/hooks/hooks-overview)\n* [Using MCP servers with the GitHub Copilot SDK](/es/copilot/how-tos/copilot-sdk/features/mcp)\n* [Guía de depuración](/es/copilot/how-tos/copilot-sdk/troubleshooting/debugging)"}