Comandos slash integrados

ComandoPropósito
/add-dirAgregar directorios de trabajo adicionales
/agentsGestionar subagentes de IA personalizados para tareas especializadas
/bugReportar errores (envía la conversación a Anthropic)
/clearLimpiar el historial de conversación
/compact [instructions]Compactar conversación con instrucciones de enfoque opcionales
/configVer/modificar configuración
/costMostrar estadísticas de uso de tokens (ver guía de seguimiento de costos para detalles específicos de suscripción)
/doctorVerifica la salud de tu instalación de Claude Code
/helpObtener ayuda de uso
/initInicializar proyecto con guía CLAUDE.md
/loginCambiar cuentas de Anthropic
/logoutCerrar sesión de tu cuenta de Anthropic
/mcpGestionar conexiones de servidor MCP y autenticación OAuth
/memoryEditar archivos de memoria CLAUDE.md
/modelSeleccionar o cambiar el modelo de IA
/permissionsVer o actualizar permisos
/pr_commentsVer comentarios de pull request
/reviewSolicitar revisión de código
/statusVer estados de cuenta y sistema
/terminal-setupInstalar combinación de teclas Shift+Enter para nuevas líneas (solo iTerm2 y VSCode)
/vimEntrar en modo vim para alternar entre modos de inserción y comando

Comandos slash personalizados

Los comandos slash personalizados te permiten definir prompts de uso frecuente como archivos Markdown que Claude Code puede ejecutar. Los comandos están organizados por alcance (específicos del proyecto o personales) y admiten espacios de nombres a través de estructuras de directorios.

Sintaxis

/<nombre-comando> [argumentos]

Parámetros

ParámetroDescripción
<nombre-comando>Nombre derivado del nombre del archivo Markdown (sin extensión .md)
[argumentos]Argumentos opcionales pasados al comando

Tipos de comandos

Comandos de proyecto

Comandos almacenados en tu repositorio y compartidos con tu equipo. Cuando se listan en /help, estos comandos muestran “(project)” después de su descripción.

Ubicación: .claude/commands/

En el siguiente ejemplo, creamos el comando /optimize:

# Crear un comando de proyecto
mkdir -p .claude/commands
echo "Analiza este código en busca de problemas de rendimiento y sugiere optimizaciones:" > .claude/commands/optimize.md

Comandos personales

Comandos disponibles en todos tus proyectos. Cuando se listan en /help, estos comandos muestran “(user)” después de su descripción.

Ubicación: ~/.claude/commands/

En el siguiente ejemplo, creamos el comando /security-review:

# Crear un comando personal
mkdir -p ~/.claude/commands
echo "Revisa este código en busca de vulnerabilidades de seguridad:" > ~/.claude/commands/security-review.md

Características

Espacios de nombres

Organiza comandos en subdirectorios. Los subdirectorios se usan para organización y aparecen en la descripción del comando, pero no afectan el nombre del comando en sí. La descripción mostrará si el comando proviene del directorio del proyecto (.claude/commands) o del directorio a nivel de usuario (~/.claude/commands), junto con el nombre del subdirectorio.

Los conflictos entre comandos a nivel de usuario y proyecto no están soportados. De lo contrario, múltiples comandos con el mismo nombre base de archivo pueden coexistir.

Por ejemplo, un archivo en .claude/commands/frontend/component.md crea el comando /component con descripción mostrando “(project:frontend)”. Mientras tanto, un archivo en ~/.claude/commands/component.md crea el comando /component con descripción mostrando “(user)”.

Argumentos

Pasa valores dinámicos a comandos usando marcadores de posición de argumentos:

Todos los argumentos con $ARGUMENTS

El marcador de posición $ARGUMENTS captura todos los argumentos pasados al comando:

# Definición del comando
echo 'Corregir problema #$ARGUMENTS siguiendo nuestros estándares de codificación' > .claude/commands/fix-issue.md

# Uso
> /fix-issue 123 alta-prioridad
# $ARGUMENTS se convierte en: "123 alta-prioridad"
Argumentos individuales con $1, $2, etc.

Accede a argumentos específicos individualmente usando parámetros posicionales (similar a scripts de shell):

# Definición del comando  
echo 'Revisar PR #$1 con prioridad $2 y asignar a $3' > .claude/commands/review-pr.md

# Uso
> /review-pr 456 alta alice
# $1 se convierte en "456", $2 se convierte en "alta", $3 se convierte en "alice"

Usa argumentos posicionales cuando necesites:

  • Acceder a argumentos individualmente en diferentes partes de tu comando
  • Proporcionar valores por defecto para argumentos faltantes
  • Construir comandos más estructurados con roles específicos de parámetros

Ejecución de comandos bash

Ejecuta comandos bash antes de que se ejecute el comando slash usando el prefijo !. La salida se incluye en el contexto del comando. Debes incluir allowed-tools con la herramienta Bash, pero puedes elegir los comandos bash específicos a permitir.

Por ejemplo:

---
allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*)
description: Crear un commit de git
---

## Contexto

- Estado actual de git: !`git status`
- Diff actual de git (cambios staged y unstaged): !`git diff HEAD`
- Rama actual: !`git branch --show-current`
- Commits recientes: !`git log --oneline -10`

## Tu tarea

Basándote en los cambios anteriores, crea un solo commit de git.

Referencias de archivos

Incluye contenidos de archivos en comandos usando el prefijo @ para referenciar archivos.

Por ejemplo:

# Referenciar un archivo específico

Revisa la implementación en @src/utils/helpers.js

# Referenciar múltiples archivos

Compara @src/old-version.js con @src/new-version.js

Modo de pensamiento

Los comandos slash pueden activar pensamiento extendido incluyendo palabras clave de pensamiento extendido.

Frontmatter

Los archivos de comandos admiten frontmatter, útil para especificar metadatos sobre el comando:

FrontmatterPropósitoPor defecto
allowed-toolsLista de herramientas que el comando puede usarHereda de la conversación
argument-hintLos argumentos esperados para el comando slash. Ejemplo: argument-hint: add [tagId] | remove [tagId] | list. Esta pista se muestra al usuario cuando autocompletando el comando slash.Ninguno
descriptionBreve descripción del comandoUsa la primera línea del prompt
modelCadena de modelo específica (ver Resumen de modelos)Hereda de la conversación

Por ejemplo:

---
allowed-tools: Bash(git add:*), Bash(git status:*), Bash(git commit:*)
argument-hint: [mensaje]
description: Crear un commit de git
model: claude-3-5-haiku-20241022
---

Crear un commit de git con mensaje: $ARGUMENTS

Ejemplo usando argumentos posicionales:

---
argument-hint: [número-pr] [prioridad] [asignado]
description: Revisar pull request
---

Revisar PR #$1 con prioridad $2 y asignar a $3.
Enfócate en seguridad, rendimiento y estilo de código.

Comandos slash MCP

Los servidores MCP pueden exponer prompts como comandos slash que se vuelven disponibles en Claude Code. Estos comandos se descubren dinámicamente desde servidores MCP conectados.

Formato de comando

Los comandos MCP siguen el patrón:

/mcp__<nombre-servidor>__<nombre-prompt> [argumentos]

Características

Descubrimiento dinámico

Los comandos MCP están automáticamente disponibles cuando:

  • Un servidor MCP está conectado y activo
  • El servidor expone prompts a través del protocolo MCP
  • Los prompts se recuperan exitosamente durante la conexión

Argumentos

Los prompts MCP pueden aceptar argumentos definidos por el servidor:

# Sin argumentos
> /mcp__github__list_prs

# Con argumentos
> /mcp__github__pr_review 456
> /mcp__jira__create_issue "Título del error" alta

Convenciones de nomenclatura

  • Los nombres de servidor y prompt se normalizan
  • Los espacios y caracteres especiales se convierten en guiones bajos
  • Los nombres se convierten a minúsculas para consistencia

Gestión de conexiones MCP

Usa el comando /mcp para:

  • Ver todos los servidores MCP configurados
  • Verificar el estado de conexión
  • Autenticar con servidores habilitados para OAuth
  • Limpiar tokens de autenticación
  • Ver herramientas y prompts disponibles de cada servidor

Permisos MCP y comodines

Al configurar permisos para herramientas MCP, nota que los comodines no están soportados:

  • Correcto: mcp__github (aprueba TODAS las herramientas del servidor github)
  • Correcto: mcp__github__get_issue (aprueba herramienta específica)
  • Incorrecto: mcp__github__* (comodines no soportados)

Para aprobar todas las herramientas de un servidor MCP, usa solo el nombre del servidor: mcp__servername. Para aprobar solo herramientas específicas, lista cada herramienta individualmente.

Ver también