Los hooks existentes de Claude Code también se ejecutan en eventos, como un comando de shell, una solicitud HTTP, o un mensaje que usted configura en un archivo de configuración. Los controladores de un mod son funciones que se ejecutan dentro de Claude Code en su lugar. Claude Code llama a ambos tipos de hooks: en estas páginas, “hook” significa un controlador de un mod, y el tipo de archivo de configuración es un “settings hook”.
Qué puede hacer un mod
Los settings hooks, skills, líneas de estado, y servidores MCP funcionan desde fuera de Claude Code: cada uno ejecuta un script, o le da a Claude texto o herramientas. Un mod se ejecuta dentro de Claude Code, por lo que puede hacer cosas que ellos no pueden:- Dibujar una interfaz que pueda usar: un panel junto a la transcripción o una banda encima del mensaje, con pestañas, botones, y campos de texto. Vea Dibujar en la interfaz.
- Redibujar la propia interfaz de Claude Code: reemplazar o cambiar el estilo de partes que Claude Code dibuja a sí mismo, como la fila de una llamada de herramienta, el spinner, o el diálogo en el que Claude hace preguntas. Vea Cambiar lo que Claude Code ya dibuja.
- Intervenir en una llamada de herramienta o una solicitud: por ejemplo, mantener una llamada de herramienta mientras hace una pregunta al usuario, responderla sin ejecutar la herramienta, o enviar una solicitud a un modelo diferente. Vea Proteger o cambiar una llamada de herramienta y Seguir un turno.
- Ejecutar su propio código en un comando: un
/commandque ejecuta su función de inmediato, sin un turno de Claude, incluso mientras Claude está trabajando. Vea Agregar un comando o una herramienta. - Compartir datos entre hooks: los hooks de un mod comparten las variables en su archivo, por lo que lo que un hook registra, otro puede mostrar. Por ejemplo, un hook puede contar llamadas de herramientas mientras otro muestra el conteo junto al spinner, o uno puede leer el uso de tokens de cada solicitud mientras otro lo grafica en un panel. Vea Reaccionar a eventos.
claude -p, y sesiones en la nube. Si un settings hook, un skill, o un servidor MCP ya hace lo que necesita, compárelos antes de escribir un mod. Para administrar mods para una organización, vea Administrar mods para su organización.
Obtener un mod
Puede comenzar con un mod de una de tres formas:- Usar uno que ya tiene: algunas de las propias características de Claude Code son mods, como
/diff. Vea Mods integrados en Claude Code. - Hacer uno: describa lo que desea en una sesión de Claude Code, y Claude escribe el mod. Vea Pedir a Claude un mod. Para aprender cómo funciona el código de un mod, escriba uno usted mismo.
- Instalar uno: vea Instalar o actualizar un mod
Instalar o actualizar un mod
Un mod se instala como un plugin, desde un mercado. Proporcione el nombre del plugin, una@, y el nombre del mercado. Estos ejemplos instalan un plugin llamado token-chart desde un mercado llamado your-org:
- En una sesión de Claude Code, ejecute
/plugin install token-chart@your-org. - En su shell, ejecute
claude plugin install token-chart@your-org.
/reload-plugins en esa sesión para cargarlo. De lo contrario, se carga la próxima vez que inicie Claude Code.
Decidir si confiar en un mod
Un mod es código que se ejecuta con sus permisos, dentro de Claude Code. Instale mods solo de autores y mercados en los que confíe.A qué puede acceder un mod
Un mod se ejecuta con sus permisos, por lo que antes de instalar uno, sepa a qué tiene acceso. Una vez que se carga, un mod puede:- Actuar en su máquina como usted: leer y escribir archivos en cualquier lugar donde su cuenta de usuario pueda, iniciar programas, y hacer solicitudes de red
- Leer sus secretos: variables de entorno y archivos de configuración, incluida una clave API que mantenga en cualquiera de ellos
- Ver su sesión: cada mensaje que envía y cada llamada de herramienta que Claude hace
- Cambiar su sesión: reescribir un mensaje o una llamada de herramienta, enviar un mensaje como si lo hubiera escrito, o enviar un mensaje a otra de sus sesiones
- Actuar sin pedirle: aprobar una llamada de herramienta antes de que se le pregunte
- Gastar su uso: llamar a un modelo en su plan o clave API
ask solicitaría, o que uno de sus propios hooks PreToolUse bloqueó. Extender permisos con hooks enumera lo que tal mod puede aprobar, incluido cuándo puede aprobar una llamada que una regla deny rechaza.
Un mod puede cambiar el estilo de gran parte de la interfaz de Claude Code, pero no el mensaje de permiso. No puede cambiar lo que un mensaje le muestra.
Enumerar lo que hace un mod antes de instalarlo
Antes de instalar un mod, puede enumerar qué eventos engancha y qué le pide a Claude Code que haga, como leer un archivo o hacer una solicitud de red, sin ejecutarlo. Obtenga primero los archivos del plugin, por ejemplo clonando su repositorio. Luego, en su shell, ejecuteclaude plugin validate en el directorio del plugin:
hooks: y calls: en la salida enumeran los eventos que el mod maneja y qué le pide a Claude Code que haga. Revisar qué puede hacer un mod muestra la salida y qué llamadas buscar.
Activar o desactivar mods
Los mods requieren Claude Code v2.1.287 o posterior, y están activados de forma predeterminada. En su shell, ejecuteclaude --version para verificar, y actualice Claude Code si el suyo es más antiguo.
Para desactivar los mods, elija cuántos detener y por cuánto tiempo. Para activarlos de nuevo, deshaga el mismo cambio:
- Un mod: deshabilite o desinstale su plugin desde la pestaña Installed en
/plugin - Cada mod instalado, para una sesión: inicie Claude Code con
--safe-mode, que también deja fuera sus otras personalizaciones - Cada mod que instaló, en cada sesión: establezca
"disableAllHooks": trueen~/.claude/settings.json. Sus settings hooks y línea de estado personalizada también se detienen. Lo que su organización administra sigue ejecutándose.
Si estableció
CLAUDE_CODE_ENABLE_FUNCTION_HOOKS durante el acceso temprano, elimínelo. Claude Code v2.1.287 y posterior lo ignora, por lo que establecerlo en 0 no mantiene los mods desactivados.Ver qué mods cargó una sesión
Para ver qué mods cargó una sesión de terminal, ejecute/plugin en el mensaje de Claude Code. Una línea atenuada bajo las pestañas da el conteo y los nombres, como 1 mod active · first-mod. Si un mod que instaló no aparece allí, vea Averiguar por qué un mod no hace nada.
Cómo funciona un mod
Un mod es un plugin cuyo código registra controladores de eventos, llamados hooks. Claude Code ejecuta un hook cuando ocurre su evento, como cuando Claude llama a una herramienta o cuando se dibuja el spinner. Un mod pequeño tiene tres archivos:plugin.json: el manifiesto del pluginhooks.json: apunta a su archivo de códigoregister.js: su código, llamado el módulo de hooks. Le dice a Claude Code en qué eventos ejecutar sus funciones.
register.js completo. Cuenta las llamadas de herramientas que Claude hace y muestra el conteo junto al spinner mientras Claude trabaja, como en Thinking · tool calls: 3….
hooks/register.js
calls en la parte superior:
- El hook
tool.callse ejecuta cada vez que Claude está a punto de usar una herramienta. Suma uno acalls, le pide a Claude Code que dibuje la interfaz de nuevo, y deja que la herramienta se ejecute como de costumbre. - El hook
ui.renderse ejecuta cada vez que Claude Code dibuja el spinner. Mantiene el propio spinner de Claude Code y agrega el conteo después de la palabra.
Thinking · tool calls: 1…, luego 2…, luego 3….
Qué puede hacer un hook con un evento
Claude Code ejecuta su hook antes de actuar sobre el evento, por lo que el hook decide qué sucede a continuación. Tiene tres opciones:- Observar: notar qué está sucediendo y dejar que continúe sin cambios, como lo hace el hook
tool.callen el ejemplo - Reescribir: cambiar el evento antes de que continúe, como lo hace el hook
ui.rendercuando agrega el conteo al spinner - Responder: manejar el evento a sí mismo, por lo que el comportamiento habitual no se ejecuta, como rechazar un comando
Dónde se ejecutan los mods
Los hooks de un mod se ejecutan en cada tipo de sesión que carga el plugin. El dibujo es más estrecho: solo la terminal y la aplicación Desktop muestran los paneles, bandas, y filas reemplazadas de un mod. Esta tabla enumera cada lugar donde podría ejecutar Claude Code:
Un mod que dibuja puede verificar en qué aplicación se está ejecutando y recurrir a una línea en la transcripción o una respuesta de texto de comando donde nada se dibuja.
Controlar mods para su organización
Los administradores deciden si los mods se ejecutan y cuáles, a través de configuración administrada. Administrar mods para su organización cubre qué sucede de forma predeterminada, cómo revisar un mod, y cómo aplicar una política con un mod propio.Comparar mods, settings hooks, skills, y servidores MCP
Los mods, settings hooks, skills, y servidores MCP se superponen. Esta tabla muestra qué es cada uno y cuándo elegirlo.
Cada uno de los otros tiene su propia página: Hooks, Skills, y MCP. Un plugin puede contener los cuatro, por lo que un mod puede enviarse en el mismo plugin que un skill y un servidor MCP.
Mods integrados en Claude Code
Algunas de las propias características de Claude Code son mods. Para ver los que su sesión tiene, ejecute/plugin en el mensaje de Claude Code y vaya a la pestaña Installed, que los enumera bajo Built-in. No puede actualizar o desinstalar un mod integrado, y la última columna de la tabla dice cómo desactivar cada uno. La línea mods active deja fuera los mods integrados.
Esta tabla enumera cada entrada por el nombre que /plugin muestra:
La configuración y las banderas que detienen los mods instalados, como
disableAllHooks, --bare, y --safe-mode, no detienen los mods integrados.
Leer la fuente de los mods integrados
La fuente de cuatro de estos mods es pública en el directoriomods del repositorio de Claude Code. Cada uno es un plugin completo con su módulo de hooks y pruebas:
diff: el panel/diff, con botones vinculados a acciones de teclado y desplazamiento que el mod maneja a sí mismoagents-md: cargaAGENTS.mdcomo instrucciones del proyecto, con una opciónuserConfigsec-default: el guardia descrito en Saber qué sucede de forma predeterminada, un modelo para un mod que aplica políticatelemetry: agrega métodos que otros mods pueden llamar, y envía sus tipos
Próximos pasos
- Crear un mod: construya uno que cuente llamadas de herramientas, muestre el conteo junto al spinner, y agregue un comando, y aprenda el bucle de edición y recarga
- Dibujar en la interfaz: paneles, la banda encima del mensaje, botones, campos de texto, y estado
- Reaccionar a eventos: llamadas de herramientas, mensajes, turnos, y el orden en que se ejecutan los mods
- Usar la API de mods: comandos, herramientas, llamadas de modelo, temporizadores, y archivos
- Probar un mod: pruebas automatizadas que se ejecutan sin una sesión
- Solucionar problemas de un mod: las razones por las que un mod no hace nada, y el registro de depuración
- Administrar mods para su organización: valores predeterminados, configuración administrada, revisión de un mod, y mods de política
- Referencia de mods: cada evento, método, elemento, y límite