Cómo se integran en Claude Code: Skills, Subagentes, MCP, Ganchos, Plugins
Cómo funciona Claude Code: CLAUDE.md, habilidades, subagentes, MCP, ganchos, comandos de barra y complementos, qué hace cada componente y cuándo utilizarlo.
Fuentes: Top 30 Claude Code Agentic Architecture Interview Questions and Answers — 2026
Qué es Claude Code desde el punto de vista arquitectónico
Claude Code funciona mejor cuando se entiende como un sistema de orquestación de ingeniería de software agente, y no como un generador de código al que se le dan instrucciones. Recopila el contexto del proyecto, determina qué se necesita, utiliza herramientas, asigna tareas a subagentes especializados, se comunica con sistemas externos, lleva a cabo acciones, verifica los resultados y vuelve a intentarlo si algo no está correcto.
En resumen, su comportamiento consiste en un ciclo de recopilación de contexto, ejecución de acciones y verificación de resultados. El modelo de lenguaje es solo uno de sus componentes; lo rodean la gestión de contexto, flujos de trabajo reutilizables, trabajadores especializados, herramientas, integraciones, automatización determinista y verificación.
Compare los dos flujos. Un asistente de codificación tradicional recibe una solicitud, genera código y devuelve una respuesta. Una configuración basada en agentes sigue un proceso de: requerimiento, comprensión del contexto, selección de capacidades, ejecución, validación, iteración y entrega. Tome como ejemplo una solicitud de un archivo de prueba. Un flujo de trabajo basado en agentes podría revisar el repositorio, identificar las convenciones de pruebas existentes, encontrar la API afectada, escribir pruebas, ejecutarlas, analizar qué falló, modificar la implementación, validar nuevamente y finalizar con un resumen. El cambio principal es de producir código a ejecutar y verificar tareas.
CLAUDE.md: contexto persistente del proyecto
CLAUDE.md es la capa de contexto persistente del proyecto. Alberga elementos como las convenciones de codificación, las decisiones arquitectónicas, la estructura del repositorio, los comandos de compilación y pruebas, los estándares de pruebas, las reglas de seguridad y lo que se considera completado. Un fragmento pequeño podría ser:
- Framework: Playwright con TypeScript
- Las pruebas de interfaz se ejecutan mediante
npm run test:e2e, las pruebas de API mediantenpm run test:api - Las credenciales nunca se almacenan de forma hardcoded
- Cada nuevo endpoint de API necesita pruebas negativas
Esto evita que los ingenieros tengan que explicar una y otra vez las mismas convenciones. Considere este archivo como la respuesta a la pregunta "¿cómo funciona este proyecto?"
El archivo debe contener conocimientos estables que Claude necesite una y otra vez: convenciones de repositorios, requisitos de pruebas, principios de arquitectura, comandos de compilación, reglas de nombramiento, requisitos de seguridad y hábitos del equipo. No debería convertirse en un manual extenso con instrucciones paso a paso para cada tarea posible. Una línea divisoria útil es que CLAUDE.md indica qué debe saber Claude sobre el proyecto, mientras que una Habilidad describe cómo realizar un tipo específico de trabajo. Mantenerlos separados facilita el mantenimiento y mantiene el contexto más definido.
Habilidades: conocimientos reutilizables
Una Skill captura la experiencia reutilizable como un flujo de trabajo. Puede incluir instrucciones, scripts y recursos de apoyo para una actividad especializada: pruebas de API, revisión de código, revisión de seguridad, refactorización, generación de documentación o pruebas de regresión. Al escribir el flujo de trabajo una sola vez, se evita tener que explicar repetidamente la misma tarea a Claude. Una Skill responde sobre cómo se realiza este tipo de trabajo.
Por ejemplo, una Skill para pruebas de API podría seguir estos pasos en orden:
- Identificar el contrato de la API.
- Inspeccionar las pruebas que ya existen.
- Generar escenarios positivos.
- Generar escenarios negativos.
- Generar casos límite.
- Ejecutar las pruebas.
- Analizar los fallos.
- Elaborar un informe.
Ante una solicitud como “añadir cobertura de regresión para la API de pagos”, la habilidad no pasa directamente a escribir código de pruebas. En su lugar, aplica una metodología de pruebas estándar, de modo que cada API se pruebe según el mismo estándar organizacional.
CLAUDE.md versus Habilidades
La diferencia radica en el contexto versus el procedimiento. CLAUDE.md describe el proyecto: las pruebas de API utilizan Playwright, cada endpoint requiere pruebas negativas y las credenciales provienen de variables de entorno. Una habilidad de pruebas de API describe el procedimiento: inspeccionar el contrato, generar pruebas positivas, negativas y de límites, ejecutarlas y clasificar los fallos. Uno abarca lo que el agente necesita saber, mientras que el otro indica cómo debe realizar el trabajo.
Subagentes: delegación de tareas específicas
Los subagentes son trabajadores especializados que se encargan de una tarea específica dentro de su propio contexto y envían los resultados al agente principal. Un agente principal puede delegar tareas a un subagente de pruebas de interfaz de usuario, a un subagente de pruebas de API y a un subagente de seguridad. Cada uno investiga su área de forma independiente, y el agente principal combina sus resultados en uno final.
¿Por qué no un solo agente grande?
El trabajo de ingeniería complejo suele tener varios aspectos independientes. Una nueva función de pago puede requerir validación de la interfaz de usuario, pruebas de regresión de API, análisis de seguridad y verificación de la base de datos. Un solo agente podría intentar hacerlo todo, pero el contexto se vuelve excesivo y el material no relacionado se mezcla. Los subagentes ofrecen cuatro ventajas:
- Aislamiento de contexto: cada uno recibe únicamente la información que le es relevante.
- Especialización: cada uno puede seguir instrucciones diferentes.
- Investigación paralela: las tareas independientes pueden analizarse por separado.
- Contexto principal más limpio: los registros intermedios no necesitan permanecer en el contexto principal del orquestador.
Habilidad versus subagente
Una habilidad describe cómo debe realizarse el trabajo, mientras que un subagente es quien se encarga de una parte especializada de él. La habilidad de pruebas de API detalla la metodología de la organización. El subagente de pruebas de API recibe una API específica y la analiza utilizando instrucciones y herramientas adecuadas.
Subagentes y la ventana de contexto
Las tareas de agente generan una gran cantidad de resultados intermedios. Una revisión de seguridad puede producir análisis de dependencias, hallazgos relacionados con autenticación y autorización, registros de seguridad, búsquedas en el código y resultados de pruebas. Al introducir todo esto en el agente principal, la orquestación se vuelve más difícil con el tiempo. Un subagente de seguridad puede realizar la investigación por sí mismo y devolver un resultado compacto, como dos hallazgos críticos, cuatro de nivel medio, cambios recomendados y las pruebas necesarias. El agente principal recibe el resultado final y no cada paso del proceso. Por lo tanto, el aislamiento de contexto es tanto una ventaja arquitectónica como una comodidad.
MCP y herramientas
Qué es MCP
MCP es la abreviatura de Model Context Protocol. Se trata del mecanismo de integración a través del cual un agente se comunica con sistemas externos y fuentes de datos. Claude Code está en un extremo, mientras que en el otro se encuentran GitHub, Jira, bases de datos, APIs, navegadores y sistemas de monitoreo. Esto permite que el agente trascienda el entorno de programación local y acceda a los sistemas utilizados durante todo el ciclo de vida del desarrollo.
La ingeniería de software rara vez se limita a un editor. Un desarrollador puede necesitar Jira para los requisitos, GitHub para los archivos fuente y las solicitudes de integración, bases de datos para la validación, sistemas de monitoreo para detectar errores en producción y APIs para conocer el comportamiento de la aplicación. Con MCP, un flujo de trabajo puede leer una tarea de Jira, inspeccionar el repositorio afectado, identificar la API correspondiente, generar pruebas, ejecutarlas y abrir una solicitud de integración. El agente de programación pasa a formar parte de un proceso de ingeniería más amplio.
MCP frente a las herramientas
No son lo mismo. MCP es el protocolo o capa de integración, mientras que una herramienta es la capacidad específica que puede utilizar el agente. Un servidor Jira MCP podría exponer get_issue(), search_issues() y create_comment(). Esas funciones son herramientas, y MCP es el medio mediante el cual se vuelven accesibles. En resumen, MCP es la forma en que el agente se conecta, y una herramienta es lo que puede hacer.
Qué herramientas ofrece un agente
Las herramientas permiten a un agente realizar acciones. Sin ellas, un LLM se limita principalmente a razonar y escribir texto. Con ellas, puede leer un archivo para comprender una implementación, buscar en el repositorio código relevante, editar un archivo para cambiar su comportamiento, ejecutar una orden para realizar una prueba, leer los resultados para diagnosticar un fallo, editar nuevamente para solucionarlo y volver a ejecutar la validación para confirmar. Las herramientas convierten a un generador de respuestas en un participante activo en el trabajo de ingeniería.
Tipos de herramientas
Claude Code cuenta con capacidades integradas para leer y editar archivos, buscar código, ejecutar comandos, interactuar con recursos y activar flujos de trabajo de subagentes especializados. MCP puede ofrecer aún más funcionalidades. Es útil clasificarlas por su propósito:
- Las herramientas de observación leen, buscan e inspeccionan.
- Las herramientas de acción escriben, editan y ejecutan.
- Las herramientas de integración se conectan a plataformas externas.
- Las herramientas de delegación hacen llamadas a agentes especializados.
Juntas permiten que el sistema observe su entorno, tome decisiones, actúe y verifique el resultado.
Ganchos, comandos y complementos
Ganchos
Los ganchos proporcionan automatización determinista basada en eventos. Una habilidad puede indicarle a Claude que ejecute pruebas de regresión al probar una API. Un gancho funciona de manera diferente: cada vez que ocurre un evento determinado, se ejecuta automáticamente una validación. Por ejemplo, después de modificar el código, el gancho podría activar el formateador, luego la validación de estilo, seguidas de pruebas específicas, y devolver los resultados de la validación. Esto es valioso cuando ciertos controles técnicos deben realizarse en todas las ocasiones.
Las habilidades son flujos de trabajo que el modelo puede utilizar, mientras que los ganchos son automatizaciones desencadenadas por eventos. Una habilidad describe el proceso recomendado para una revisión de código. Un gancho ejecuta la validación de estilo inmediatamente después de cualquier cambio en un archivo. Las habilidades ayudan al modelo a comprender cómo funcionar, y los ganchos se aseguran de que se realicen acciones clave cuando ocurren eventos específicos.
Por qué los ganchos son importantes en producción
La IA generativa es probabilística, por lo que los equipos no deben depender del modelo para decidir si se ejecuta un control importante. Si cada cambio debe pasar por formatos, análisis de errores, escaneo de seguridad y pruebas unitarias, esos pasos pueden vincularse a una automatización determinística en lugar de dejarlos al juicio del modelo. El principio consiste en utilizar el razonamiento de la IA para decisiones flexibles y la automatización determinística para controles obligatorios, y esta división es especialmente importante en entornos empresariales.
Comandos
Los comandos son flujos de trabajo activados de forma explícita, como /review, /test y /debug. Al escribir /review se inicia intencionadamente un flujo de trabajo predefinido de revisión de código. Un comando indica “Quiero ejecutar este flujo de trabajo de manera explícita”.
Los comandos son iniciados por el usuario, mientras que los ganchos son iniciados por un evento. Escribir /test es un comando explícito. El cambio en el código fuente y la ejecución automática de pruebas en respuesta son formas de automatización basada en eventos. Por lo tanto, un comando es activado por un humano, y un gancho es activado por un evento.
Tanto los comandos como las Habilidades también se superponen, ya que una Habilidad reutilizable puede exponer un flujo de trabajo que las personas invocan intencionadamente. Una función de revisión podría estar incluida en una Habilidad y ser iniciada con /review. Sin embargo, una Habilidad contiene mucho más que una simple instrucción: instrucciones, recursos de apoyo, scripts y configuraciones relacionadas con una capacidad de ingeniería reutilizable.
Plugins
Los plugins empaquetan y distribuyen extensiones. Imagine una organización de pruebas que ha creado una habilidad para pruebas de API, una habilidad para pruebas de seguridad, un subagente para API, un subagente para seguridad, ganchos de validación e integraciones MCP. En lugar de que cada desarrollador tenga que recrear ese entorno, todas estas partes se envían juntas como un único plugin.
Por eso los plugins son importantes para las empresas. Ellos elevan la ingeniería basada en agentes de la productividad personal a una capacidad organizacional. Cuando no existe un empaquetado compartido, cada ingeniero termina configurando el entorno de IA de manera diferente. Un plugin estándar puede agrupar estándares de ingeniería, métodos de prueba, agentes especializados, reglas de automatización e integraciones, de modo que cada proyecto cuente con capacidades idénticas. En términos de arquitectura, los plugins pertenecen a la capa de gobernanza y estandarización.
Cómo se integran los componentes
Una imagen compacta asigna una tarea a cada componente:
CLAUDE.mdconoce el proyecto.- Las habilidades saben cómo trabajar.
- Los subagentes realizan tareas especializadas delegadas.
- Las herramientas ejecutan acciones.
- MCP se conecta a sistemas externos.
- Los hooks automatizan los eventos del ciclo de vida.
- Los comandos activan flujos de trabajo según sea necesario.
- Los plugins empaquetan y distribuyen capacidades.
Claude Code se encuentra en el centro y los orquesta. Cada uno aborda problemas arquitectónicos diferentes y no son características intercambiables.
Un flujo de trabajo de principio a fin
Tomemos el requisito “añadir cobertura de regresión para la nueva API de pagos”. Un proceso plausible sería el siguiente:
- Requisito. Claude Code recibe la solicitud.
- Contexto del proyecto.
CLAUDE.mdproporciona estándares de pruebas, comandos, convenciones de repositorio y expectativas de seguridad. - Selección de habilidades. Una habilidad de pruebas de API ofrece la metodología de la organización.
- Delegación. Subagentes especializados analizan la funcionalidad de la API, las preocupaciones de seguridad y el impacto de las regresiones.
- Integraciones. Los sistemas conectados a MCP brindan acceso a las plataformas externas relevantes.
- Herramientas. Claude Code lee código, busca archivos, escribe pruebas y ejecuta comandos.
- Validación. Los ganchos ejecutan análisis de formato, pruebas específicas u otras verificaciones.
- Verificación. Claude evalúa los resultados y decide si se necesita más trabajo.
- Resultado final. El agente devuelve las pruebas, sus resultados, la documentación y un resumen de lo que se realizó.
Se trata de un flujo de trabajo de ingeniería basado en agentes completo, y está muy lejos de ser una simple generación de código.
El ciclo del agente
Para reiterar el modelo básico: recopilar contexto, tomar acción, verificar resultados. La recopilación incluye comprender los requisitos, el repositorio, la arquitectura, las convenciones, las dependencias y la implementación actual. La acción implica usar herramientas para buscar, modificar, ejecutar, integrar o delegar tareas. La verificación consiste en ejecutar pruebas, leer los resultados, detectar fallos y determinar si realmente se cumplieron los requisitos. Una verificación fallida hace que el sistema vuelva a la fase de recopilación o acción.
En la práctica, el flujo es más bien contexto, acción, verificación, corrección, nueva verificación y, finalmente, finalización. Esa iteración es lo que distingue a un agente fiable de la generación de código de una sola vez.
Diseño de una configuración de ingeniería de pruebas para IA
Una arquitectura sólida de SDET en Claude Code podría combinar:
CLAUDE.mdcon marcos de pruebas, arquitectura, convenciones de pruebas, reglas de seguridad y la definición de lo que se considera terminado.- Habilidades para pruebas de API, pruebas de interfaz de usuario, pruebas de regresión y análisis de fallos.
- Subagentes para tareas relacionadas con la interfaz de usuario, la API, la seguridad y las pruebas de regresión.
- Herramientas para buscar en repositorios, editar archivos, ejecutar comandos y ejecutar pruebas.
- Conexiones MCP a GitHub, Jira, bases de datos, APIs y sistemas de monitoreo.
- Gancho que ejecutan tareas de formato, análisis de código, pruebas y validación después de los cambios.
- Comandos como
/api-test,/regression,/security-reviewy/debug. - Un plugin que empaqueta todo el conjunto para que varios equipos de ingeniería puedan reutilizarlo.
El orquestador coordina estas partes de acuerdo con los requisitos.
Elegir el mecanismo adecuado
Cinco preguntas ayudan a identificar el componente adecuado.
- ¿Se trata de conocimiento reutilizable para realizar una tarea? Utilice una Habilidad.
- ¿Se necesita un trabajador especializado e independiente? Utilice un Subagente.
- ¿El agente debe llevar a cabo una operación? Utilice una Herramienta.
- ¿La acción depende de una plataforma o fuente de datos externa? Considere MCP.
- ¿Algo debe ejecutarse automáticamente cada vez que se dispara un evento de ciclo de vida? Utilice un Gancho.
Una última pregunta trata sobre la distribución: si la capacidad debe ser empaquetada y compartida, utilice un Plugin. Este marco refleja una comprensión de las responsabilidades de cada capa, por lo que se menciona en las discusiones sobre arquitectura.
La lección central
La ingeniería de agentes exitosa no se trata principalmente de un LLM más grande o inteligente. Un sistema funcional necesita varias capacidades coordinadas:
- Contexto, para que el agente comprenda el proyecto.
- Habilidades, para contar con conocimientos reutilizables.
- Delegación, ya que las tareas complejas pueden requerir trabajadores especializados.
- Herramientas, para que el agente pueda actuar.
- Integración, para acceder a sistemas de ingeniería externos.
- Automatización, para que los procesos obligatorios se ejecuten de manera fiable.
- Verificación, para determinar si las acciones realmente funcionaron.
- Empaquetado, para que las capacidades puedan reutilizarse entre equipos.
La evolución es la siguiente: chatbot de IA, asistente de programación de IA, agente de IA, flujo de trabajo de ingeniería agente y, finalmente, una plataforma de ingeniería de software agente.