- En los últimos 3 años, la evolución de las formas de expandir los LLM ha avanzado en distintas direcciones, como plugins, instrucciones de usuario, memoria, protocolos y skills
- Los primeros ChatGPT Plugins intentaron habilitar el uso de herramientas de propósito general mediante llamadas a API, pero fracasaron por las limitaciones del modelo y una UX compleja
- Después aparecieron Custom Instructions y Custom GPTs, que ofrecieron una personalización simple basada en prompts y una estructura de modelos personalizados compartibles
- Model Context Protocol (MCP) y Claude Code hicieron posible una integración de herramientas compleja pero poderosa, y recientemente Agent Skills resurgió como una forma más simple de esa idea
- Al final, la arquitectura de agentes que realiza tareas solo con herramientas de propósito general e instrucciones en lenguaje natural apunta a convertirse en la dirección central de la expansión de los LLM
Historia y cambios en la expansión de los LLM
- La forma de usar los LLM evolucionó desde una simple entrada de texto hasta agentes capaces de controlar codebases y navegadores
- Cómo dar soporte a la personalización del usuario pasó a ser un reto clave
- Se probaron enfoques muy distintos, desde prompts de sistema simples hasta protocolos cliente-servidor complejos
ChatGPT Plugins (marzo de 2023)
- OpenAI presentó ChatGPT Plugins, diseñados para que el LLM llamara endpoints REST mediante especificaciones OpenAPI
- Apuntaban al uso de herramientas de propósito general a nivel AGI
- Sin embargo, por las limitaciones de GPT-3.5 y del GPT-4 inicial, al explorar especificaciones de API a gran escala aparecían errores y pérdida de contexto
- También fue un problema la UX incómoda, como la activación manual de plugins
- Aun así, el plugin Code Interpreter (después Advanced Data Analysis) mostró el potencial de un poderoso entorno de ejecución en sandbox
Custom Instructions (julio de 2023)
- Una función simple de prompts personalizados que redujo la complejidad de los plugins
- Se añadía automáticamente a todas las conversaciones y resolvía el problema de repetir el mismo contexto una y otra vez
- Más adelante sirvió como antecedente de archivos de reglas dentro de entornos de desarrollo como
.cursorrules y CLAUDE.md
Custom GPTs (noviembre de 2023)
- OpenAI convirtió la ingeniería de prompts en producto con Custom GPTs
- Permitían agrupar persona, archivos y acciones para crear links compartibles de GPTs personalizados
- Fue un retroceso desde el enfoque abierto de los plugins hacia apps de propósito único
Memory in ChatGPT (febrero de 2024)
- El primer caso de transición hacia una función de personalización automática
- Recordaba información mencionada en la conversación y la reflejaba automáticamente en contextos posteriores
- Marcó el inicio de una arquitectura de agente persistente que mantiene estado de largo plazo sin que el usuario deba configurarlo manualmente
Cursor Rules (abril de 2024)
- Cursor IDE introdujo la gestión de instrucciones a nivel de repositorio mediante el archivo
.cursorrules
- Ejemplos: “usar tabs”, “prohibido usar punto y coma”, “usar TypeScript”
- Después se expandió a la estructura de carpetas
.cursor/rules, permitiendo aplicar reglas por archivo y por directorio
- También se añadió la capacidad de que el LLM decidiera por sí mismo cuándo aplicar una regla
Model Context Protocol (MCP, noviembre de 2024)
- El MCP introducido por Anthropic ofrece una estructura para que el modelo use herramientas reales de forma estable
- Mantiene la conexión cliente-servidor e intercambia definiciones de herramientas, recursos y prompts
- No se trata solo de agregar contexto, sino de aportar capacidades reales (capabilities)
- Ejemplos: leer repositorios, consultar bases de datos, desplegar en Vercel
- Aunque su complejidad y costo de configuración son altos, se usa como capa base de ChatGPT Apps (anunciado en octubre de 2025)
Claude Code y los mecanismos de expansión (febrero de 2025)
- Claude Code es un agente que integra varios métodos de expansión
- Gestiona instrucciones del repositorio con
CLAUDE.md
- Integra herramientas con MCP
- Soporta Slash Commands, Hooks, Sub-agents y Output Styles (próximo a ser retirado), entre otros
- Aunque no está claro si algunas funciones se mantendrán, se le considera un modelo experimental e integrado de expansión de agentes
Agent Skills (octubre de 2025)
- Una reencarnación de ChatGPT Plugins que usa una estructura de skills basada en carpetas sin protocolos complejos
- Se compone del directorio
skills/, SKILL.md, scripts y archivos de ejemplo
- Lee el contenido completo solo cuando hace falta, resolviendo el problema del sobrecargo de la ventana de contexto (context bloat)
- Ejemplo: una skill de pruebas de aplicaciones web basada en Playwright
SKILL.md incluye metadatos e instrucciones de uso
- Los scripts se ejecutan directamente, y el LLM no carga innecesariamente el código en el contexto
- Parte del supuesto de contar con acceso de propósito general a una computadora, y su punto clave es confiar en herramientas generales más que en herramientas especializadas
Perspectivas futuras
- Agent Skills materializa el ideal de los plugins iniciales
- Los modelos ya son lo bastante inteligentes como para realizar tareas solo con herramientas generales e instrucciones
- Los agentes dejan de definirse como un simple loop de LLM para redefinirse como entidades de ejecución acopladas a una computadora
- Ejemplos: Claude Code, Zo Computer y otros integran el LLM con la computadora
- Se espera que, después de 2026, las aplicaciones basadas en LLM se expandan hacia arquitecturas de agentes con la computadora integrada
- En conclusión, existe la posibilidad de que la expansión basada en lenguaje natural vuelva a ocupar el centro por encima de protocolos complejos como MCP
1 comentarios
Opinión de Hacker News
Creo que el lenguaje natural es demasiado ambiguo, así que extenderlo como lenguaje de programación es ineficiente
La razón por la que las matemáticas tienen su propio lenguaje específico de dominio es precisamente para asegurar claridad
En inglés es tedioso, pero cuando te acostumbras puedes reducir la ambigüedad
El concepto está bien resumido en este documento
Creo que Skills es la idea que hizo realidad el sueño de los ChatGPT Plugins
Ahora los modelos ya parecen lo bastante inteligentes como para que de verdad funcione
Simon Willison también argumentó en este artículo que Skills es un cambio más grande que MCP, pero parece que todavía recibe menos atención por la inercia de MCP
Pero tiene mucho más peso en el sentido de que elimina el andamiaje complejo que exige MCP
Por ejemplo, al procesar transcripciones de una cuenta de Fathom, bastó con hacer un script de CLI y escribir
SKILL.mdTambién resolví pruebas de una API cliente de la misma manera
Aun así, este enfoque parece recibir menos atención porque es menos vistoso y deja menos espacio para construir tooling grande
Además, Skills asume agentes capaces de ejecutar código arbitrario, así que la barrera de entrada es alta
Desde antes ya le decía a Claude Code “lee X y haz Y”, así que me pregunto en qué se diferencia eso de Skills
Es frustrante tener que seguir el trabajo dependiendo de I/O y de sentencias
printMCP es para construir sistemas, y Skills está limitado a Claude, así que el lock-in es fuerte
También es una gran limitación que no se puedan referenciar ni componer skills entre sí
Al final, si intentas resolver problemas de extensibilidad, reutilización o uso remoto, parece que terminas regresando a MCP
Aun así, si Skills termina asentándose como otra vista de MCP, quizá más adelante aparezca algo como un convertidor de Skill→MCP
No entiendo qué tiene que ver que el modelo haya mejorado con la Bitter Lesson
Sigue siendo una estructura donde se inyecta experiencia humana para compensar las limitaciones del modelo
Una verdadera Bitter Lesson sería obtener mejores resultados solo aumentando recursos computacionales, sin intervención humana
Los Custom GPTs son una idea vieja, pero hace poco les encontré un uso práctico
Hice un Custom GPT conectado a la API de Notion para las notas de reuniones y la gestión de pendientes de mi esposa, y en pocas horas ya funcionaba bastante bien
Intenté integrarlo con la app Reminders, pero por restricciones de la API y permisos de la UI al final tuve que crear directamente un servidor MCP
Lo dejé corriendo en una MacBook Pro vieja con Amphetamine activado y conectado por Tailnet y un túnel de Cloudflare para que se pudiera acceder desde ChatGPT
Es complejo, pero tener un agente de IA como hub central resultó bastante valioso
La implementación está resumida en este blog
Incluso ChatGPT 5.1 todavía alucina APIs que no existen, pero aun así poco a poco va mejorando
Así como el mundo cambió cada vez que los humanos mejoraron su capacidad de procesar información, si los LLM aunque sea aumentan su probabilidad de acertar, el mundo volverá a cambiar
Entiendo totalmente eso de “quiero ponerme corto con MCP”
MCP es difícil de manejar, pero hay muchas tareas en el mundo que necesitan interfaces seguras
La razón de que su diseño inicial fuera complejo es que expuso tal cual la realidad del manejo de tokens en streaming
Es complejo, pero aun así creo que sigue estando en el límite de un sistema simple que todavía funciona
No va a ser reemplazado por completo, y si los modelos quieren manejar bien entornos de agentes, estructuras como MCP todavía van a ser necesarias por un tiempo
Hoy en día los modelos ya pueden interactuar suficientemente bien con solo una descripción simple de la API
Si ya existe una API, cada vez hay menos motivos para construir además un servidor MCP
Implementarlo está al nivel de JSON-RPC + API
El ejemplo hello-world de Python FastMCP es casi idéntico a la versión en Flask
Skills apareció como reacción a eso, y hacia adelante probablemente evolucione a una estructura donde el espacio de LLM y el espacio de código se autoensamblan
Creo que Skills.md también va a terminar sufriendo el mismo problema de inflado de contexto que MCP
Casi que sería mejor dejar solo scripts, sin explicaciones, y entrenar al LLM para que busque dentro de la carpeta lo que necesita
Por ejemplo, bastaría con tener un subagente liviano que lea y seleccione skills
ChatGPT Apps, anunciadas este mes, se sienten casi iguales a los ChatGPT Plugin de hace 3 años
La diferencia está solo en cómo se invoca el plugin: antes se elegía desde un menú desplegable, ahora basta con poner el nombre en el prompt
Desde el punto de vista del usuario no parece una gran diferencia
Creo que deberíamos ver el prompt como un programa probabilístico, y hace falta un shell dedicado para invocarlo
Agentes de programación como Claude Code o Codex son un ejemplo de eso
Estoy investigando cómo separar esa función del IDE y desarrollarla como un shell independiente como llm-do
El verdadero núcleo de la expansión de los LLM es la integración con el shell
Un LLM conectado al shell prácticamente puede hacer cualquier cosa