Slash commands
Los slash commands representan una funcionalidad fundamental de GitHub Copilot Chat que permite acceder rápidamente a tareas específicas mediante comandos predefinidos. Estos comandos actúan como atajos inteligentes que transforman solicitudes comunes en acciones especializadas, optimizando significativamente el flujo de trabajo del desarrollador.
Cuando escribes / en el campo de entrada del chat, Visual Studio Code despliega automáticamente una lista de comandos disponibles, facilitando su descubrimiento y uso. Esta interfaz contextual se adapta dinámicamente según el código seleccionado y el entorno de trabajo actual.
Comandos esenciales para el desarrollo
El comando /explain constituye una herramienta fundamental para la comprensión de código. Al seleccionar un fragmento de código y ejecutar este comando, Copilot proporciona una explicación detallada de su funcionamiento, incluyendo la lógica subyacente y el propósito de cada componente:
function fibonacci(n) {
if (n <= 1) return n;
return fibonacci(n - 1) + fibonacci(n - 2);
}
Utilizando /explain sobre esta función, obtendrás una descripción completa del algoritmo recursivo, sus casos base y cómo se construye la secuencia de Fibonacci.
El comando /fix identifica y corrige problemas en el código seleccionado. Este comando analiza errores de sintaxis, lógica defectuosa o patrones problemáticos, proporcionando soluciones concretas:
def calcular_promedio(numeros):
suma = 0
for numero in numeros:
suma += numero
return suma / len(numeros) # Posible división por cero
Al aplicar /fix, Copilot detectará el riesgo de división por cero y sugerirá una validación apropiada.
Generación automatizada de contenido
El comando /tests genera pruebas unitarias completas para el código seleccionado, siguiendo las mejores prácticas del lenguaje y framework correspondiente:
public class Calculator {
public int add(int a, int b) {
return a + b;
}
public double divide(double a, double b) {
if (b == 0) throw new IllegalArgumentException("Division by zero");
return a / b;
}
}
Ejecutar /tests sobre esta clase generará un conjunto completo de pruebas JUnit, incluyendo casos normales y casos límite como la división por cero.
El comando /doc crea documentación automática siguiendo los estándares del lenguaje. Para funciones JavaScript, generará comentarios JSDoc; para Python, docstrings; y para Java, comentarios Javadoc:
def procesar_datos(datos, filtro=None):
if filtro:
datos = [item for item in datos if filtro(item)]
return sorted(datos)
Aplicar /doc producirá una documentación estructurada que describe parámetros, valores de retorno y comportamiento de la función.
Optimización y simplificación
El comando /simplify transforma código complejo o verboso en versiones más legibles y mantenibles, preservando la funcionalidad original:
function encontrarMaximo(array) {
let maximo = array[0];
for (let i = 1; i < array.length; i++) {
if (array[i] > maximo) {
maximo = array[i];
}
}
return maximo;
}
Utilizando /simplify, esta función se transformaría en una implementación más concisa usando métodos nativos del array.
El comando /optimize mejora el rendimiento del código identificando cuellos de botella y sugiriendo alternativas más eficientes. Este comando considera aspectos como complejidad algorítmica, uso de memoria y patrones de acceso a datos.
Comando de ayuda y descubrimiento
El comando /help proporciona información actualizada sobre todos los comandos disponibles en tu entorno específico. La lista de comandos puede variar según las extensiones instaladas, el tipo de proyecto y la configuración de workspace.
Para utilizar cualquier slash command, simplemente escribe / seguido del nombre del comando en el campo de entrada del chat. La autocompletación inteligente te guiará a través de las opciones disponibles, mostrando descripciones breves de cada comando.
Los slash commands se integran perfectamente con el contexto actual de tu editor, considerando el archivo abierto, la selección de código y el lenguaje de programación para proporcionar respuestas más precisas y relevantes.
Combinación de slash commands con contexto
Seleccionar código antes de ejecutar un comando
Los slash commands funcionan de forma más precisa cuando se selecciona código específico antes de escribir el comando. Sin selección, Copilot utiliza el archivo completo como contexto, lo que puede generar respuestas menos enfocadas.
El flujo recomendado es:
- 1. Seleccionar el bloque de código relevante en el editor
- 2. Abrir Copilot Chat con
Ctrl+Shift+Io desde el panel lateral - 3. Escribir el slash command seguido de instrucciones adicionales si es necesario
/explain cómo funciona la recursión en este caso
/fix centrándote en el manejo de errores
/tests usando Vitest con describe y it
Las instrucciones adicionales tras el comando permiten guiar la respuesta de Copilot hacia aspectos específicos. Por ejemplo, /tests genera tests genéricos, pero /tests usando Vitest con cobertura de casos límite produce resultados más alineados con las necesidades del proyecto.
Usar slash commands con referencias de archivo
Los slash commands admiten referencias a archivos del workspace mediante la sintaxis #file:ruta. Esto permite que Copilot analice archivos que no están abiertos en el editor:
/explain #file:src/services/authService.ts
/tests para la función que está en #file:src/utils/validation.js
Esta combinación es especialmente útil con /tests, ya que permite generar tests para un módulo referenciando tanto el código fuente como archivos de test existentes que sirvan como ejemplo del estilo esperado.
Fuentes y referencias
Documentación oficial y recursos externos para profundizar en Visual Studio Code
Documentación oficial de Visual Studio Code
Alan Sastre
Ingeniero de Software y formador, CEO en CertiDevs
Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, Visual Studio Code es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.
Más tutoriales de Visual Studio Code
Explora más contenido relacionado con Visual Studio Code y continúa aprendiendo con nuestros tutoriales gratuitos.
Aprendizajes de esta lección
Comprender qué son los slash commands y su función en GitHub Copilot Chat. Aprender a utilizar comandos esenciales como /explain, /fix, /tests, /doc, /simplify y /optimize. Saber cómo estos comandos mejoran la comprensión, corrección, documentación y optimización del código. Conocer la integración contextual de los comandos con el entorno de desarrollo y el código seleccionado. Utilizar el comando /help para descubrir y gestionar los comandos disponibles en el entorno.