Comandos slash, hooks y más: cómo dirigir Claude Code
Tres formas de dirigir Claude Code: los comandos slash los escribes tú, los hooks se ejecutan solos, y los subagents se encargan de subtareas.
Comandos slash: tú escribes, Claude Code reacciona
Un comando slash es un comando que escribes directamente en la sesión. Siempre empieza con una barra. Claude Code trae muchos comandos integrados, por ejemplo:
/help– muestra ayuda y los comandos disponibles/config– abre los ajustes de tema, modelo y output style/compact– resume la conversación hasta ahora para liberar espacio en la ventana de contexto/model– cambia el modelo y lo guarda como tu nuevo valor por defecto/permissions– gestiona las reglas de permiso para las herramientas/clear– empieza una conversación nueva con el contexto vacío
Comandos slash propios: prompts guardados
También puedes crear tus propios comandos. Para eso, añade un archivo markdown en la carpeta .claude/commands/. El nombre del archivo se convierte en el nombre del comando: deploy.md se convierte en /deploy. El texto de ese archivo es el prompt que recibe Claude en cuanto ejecutas el comando. Esto merece la pena para todo lo que repites a menudo, por ejemplo 'resume mis cambios sin commitear' o 'ordena este archivo'. En vez de escribir el prompt entero cada vez, después basta con /tu-comando.
Hooks: reglas que se ejecutan solas
Los hooks son scripts que Claude Code ejecuta automáticamente en ciertos eventos, por ejemplo antes de que corra una herramienta (PreToolUse), después de que termine una herramienta (PostToolUse), o cuando arranca una sesión (SessionStart). Un hook recibe información sobre el evento y puede permitir la acción, bloquearla o simplemente registrarla. Los hooks se configuran en un archivo de ajustes JSON, a nivel de proyecto en .claude/settings.json o para todos tus proyectos en ~/.claude/settings.json. La diferencia con los comandos slash: tú no llamas a un hook. Se ejecuta solo, sin que tengas que pedirlo.
Subagents: delegar subtareas
Los subagents delegan una subtarea a un agente propio con su propio contexto (mira la guía de subagents). Claude Code reconoce por sí mismo cuándo una tarea encaja con un subagent y la envía allí automáticamente. El subagent resuelve la tarea y solo devuelve el resultado: tu contexto principal se mantiene limpio, porque los pasos intermedios se quedan dentro del contexto del subagent.
El modelo mental
Tres herramientas, tres roles. Los comandos slash los diriges tú, decides cuándo se ejecutan. Los hooks se ejecutan solos, son reglas fijas para eventos. Los subagents son delegación, una subtarea pasa a su propio contexto separado.
EJEMPLO
Archivo `.claude/commands/changelog.md`: --- description: Resume los cambios sin commitear en una línea de changelog --- Resume el git diff actual en una sola línea para el changelog. Luego lo ejecutas con: `/changelog`
QUIZ RÁPIDO
¿Cuál es la diferencia principal entre los comandos slash y los hooks?
FUENTES
- Documentación de Claude Code: Slash commands ↗ code.claude.com
- Documentación de Claude Code: Referencia de comandos ↗ code.claude.com
- Documentación de Claude Code: Hooks ↗ code.claude.com
- Documentación de Claude Code: Subagents ↗ code.claude.com