Hooks
Los hooks son aceleradores y protecciones — no reemplazan a los planes, contratos,
revisiones ni comprobaciones. Cada ruta se direcciona mediante event + routeId + matcher,
y las rutas de protección fallan de forma cerrada.
Rutas gestionadas
Sección titulada «Rutas gestionadas»| Evento | Ruta | Matcher | Qué hace |
|---|---|---|---|
SessionStart | .default | todas las sesiones | inyecta el paquete de reanudación de la sesión anterior |
PreToolUse | .edit 🛡 | Edit / Write | retiene las ediciones hasta que se aprueba un plan |
PreToolUse | .subagent 🛡 | Task / Agent | acota el trabajo delegado |
PostToolUse | .edit | Edit / Write | comprobaciones de deriva de arquitectura + contrato |
PostToolUse | .bash | Bash | rastrea los comandos de shell |
PostToolUse | .always | todas las herramientas | añade al rastro de eventos |
UserPromptSubmit | .default | todos los prompts | enruta la intención, expone el estado del plan |
Stop | .default 🛡 | parada de sesión | escribe el siguiente paquete de traspaso |
🛡 = falla de forma cerrada.
Dónde viven
Sección titulada «Dónde viven»La fuente instalable es assets/hooks/; el runtime activo resuelve dando prioridad al
central. Los archivos de nivel de usuario ~/.claude/settings.json y ~/.codex/hooks.json
son los adaptadores de host que despachan cada evento hacia el harness. Los archivos
locales del repositorio .claude/hooks/ y .codex/hooks.json son objetivos heredados de
limpieza — solo se conservan tus propios hooks custom-*.sh.