Saltar al contenido principal

REFERENCIA

Reglas y hooks

Dos capas silenciosas dan forma al comportamiento de tu equipo. Las reglas son guía siempre activa que sigue cada agente. Los hooks son scripts pequeños que la harness ejecuta automáticamente ante ciertos eventos — una nueva sesión, un git push. Juntos son el estilo de la casa del kit y sus reflejos.

Rara vez tocas ninguno de los dos directamente. Esta página es el mapa de lo que hay.

Reglas

Un perfil instala un conjunto de reglas en .claude/rules/. Son guía, no código — leídas por el equipo en cada tarea.

ReglaLo que da forma
communication-styleCómo te habla el equipo — tono, brevedad, cuándo preguntar y cuándo avanzar.
task-managementEl flujo issue → branch → PR → merge → close a través de GitHub.
plan-output-formatCómo se escriben los planes y dónde viven (markdown, mdx o desactivado).
design-routingEnvía cualquier decisión visual / UX al designer en lugar de resolverla sobre la marcha.
mempalaceCuándo guardar y recordar memoria; escribe un resumen curado al cerrar. (perfiles con memoria)
skill-gapsPregunta por una capacidad ausente una vez, solo cuando no es obvia, y luego la recuerda.
react-annotateEl ciclo anotar → localizar → arreglar → resolver para feedback de UI. (cuando annotate está conectado)

Qué reglas obtienes depende de tu perfil y de las opciones que hayas activado. Consulta Perfiles y configuración.

Hooks

Los hooks se disparan ante eventos, no a petición. El kit instala un conjunto pequeño y fácil de adoptar de forma opcional.

HookSe dispara enQué hace
Update checkSessionStartAnota discretamente "update available" si el proyecto va por detrás del plugin instalado. En caso contrario, no hace nada.
Memory recallSessionStartRecuerda el wing de memoria del proyecto al inicio de una sesión. (memoria activada)
Memory saveStopRegistra decisiones y escribe el resumen de cierre. (memoria activada)
Memory preservePreCompactGuarda el contexto antes de que se compacte una conversación larga. (memoria activada)
Pre-push gatePreToolUse(Bash)Ejecuta tu comando antes de git push, bloqueando el push si falla. (opcional)

Los hooks ligados a opciones que no habilitaste sencillamente no se instalan — nada se dispara por una función que no estás usando.

Skills condicionadas por el stack

Las convenciones de construcción no son reglas impuestas — son skills que se activan por sí solas únicamente cuando su tecnología está presente en tu package.json:

SkillSe activa cuandoCubre
feature-build-refine@refinedev/* está presenteArquitectura de feature/form/page con Next.js + Supabase + RefineDev
supabase-patterns@supabase/supabase-js está presenteModelo de tres clientes, guardia de auth en server actions, acceso RLS-first

Si la tecnología no está en tu stack, la skill simplemente no aplica. Añade más de la misma manera — una skill autocondicionada por tecnología. Y karpathy-guidelines (salvaguardas frente a errores comunes al programar con LLM) viaja con todos los perfiles.

La barrera previa al push (opcional)

Habilítala con --prepush "<command>" en el init — p. ej. --prepush "pnpm -w build". Instala un hook PreToolUse(Bash) que ejecuta <command> antes de cada git push y bloquea el push si el comando falla. Es autopermisiva: solo actúa sobre git push, y los proyectos que no la activaron (o tienen un comando vacío) nunca se bloquean. Ajústala después mediante .prePush en kit.config.json.

Desarrollo guiado por especificaciones (opcional)

Habilítalo con --speckit on (o en el prompt de /kit-init). La skill speckit instala o identifica Spec Kit, realiza una Stack Interview y conduce el ciclo de vida specify → clarify → plan → tasks → analyze → implement con barreras de revisión. Cualquier skill de stack coincidente se convierte automáticamente en la sobrescritura feature-module.md de Spec Kit.

Cómo funciona por dentro
  • Resolución en el init. init.sh resuelve los bloques condicionales en las plantillas — IF:MEMORY, IF:PROJECTS_V2, IF:PLANS, IF:DESIGN — de modo que solo se escriben las reglas y hooks que coinciden con tus elecciones.
  • El hook de comprobación de actualizaciones. templates/hooks/kit_version_check.sh.tmpl se convierte en un hook de SessionStart que llama a scripts/kit-version-check.sh, comparando el kitVersion registrado del proyecto contra el plugin instalado mediante un sort -V consciente de semver. Imprime el aviso solo cuando el proyecto está estrictamente por detrás.
  • Hooks de memoria. La ruta IF:MEMORY conecta SessionStart / Stop / PreCompact al MCP de MemPalace. Hasta que el runtime esté presente, son no-ops seguros.
  • Pre-push. La barrera es un matcher PreToolUse(Bash) que inspecciona el comando, actúa solo sobre git push, ejecuta .prePush y devuelve un código distinto de cero que bloquea únicamente en caso de fallo.

A dónde ir después